package v2_3;public class Item implements Comparable<Item>
{private String number;  //编号private String name;private double price;private double quantity;public Item(String number, String name, double price, double quantity) {super();this.number = number;this.name = name;this.price = price;this.quantity = quantity;}public String getNumber() {return number;}public void setNumber(String number) {this.number = number;}public String getName() {return name;}public void setName(String name) {this.name = name;}public double getPrice() {return price;}public void setPrice(double price) {this.price = price;}public double getQuantity() {return quantity;}public void setQuantity(double quantity) {this.quantity = quantity;}public double getAmount() //计算小计金额{return price*quantity;}public String getDescription(){return "";}@Overridepublic int compareTo(Item other) {if(price!=other.price){return (int) (price - other.price);}return 0;}}

父类

package v2_3;public class ClothItem extends Item
{private String size;public ClothItem(String number, String name, double price, double quantity,String size) {super(number, name, price, quantity);this.size = size;}public String getSize() {return size;}public void setSize(String size) {this.size = size;}public String getDescription(){return "尺码:"+size;}
}
package v2_3;public class FruitItem extends Item
{private String origin;  //产地public FruitItem(String number, String name, double price, double quantity, String origin){super(number, name, price, quantity);this.origin = origin;}public String getOrigin() {return origin;}public void setOrigin(String origin) {this.origin = origin;}public String getDescription(){return "产地:"+origin;}
}
package v2_3;import java.util.ArrayList;
import java.util.Arrays;public class Receipt
{public static int nextId = 1; private int id; private ArrayList<Item> itemList;     private String status;//constructorpublic Receipt() {id = nextId;nextId++;itemList = new ArrayList<Item>();status = "unexcecuted";}public void addItem(Item it){itemList.add(it);} public void removeItem(int n){int i;if(n>itemList.size() || n<=0)System.out.println("Input error!");elseitemList.remove(n-1);}private double calTotalAmount(){int i;double amount = 0;for(i=0;i<itemList.size();i++)amount += itemList.get(i).getAmount();return amount;}public void printReceipt(){int i;Item[] list = new Item[itemList.size()];itemList.toArray(list);Arrays.sort(list);System.out.println("Receipt No. "+id);System.out.println("编号    名称    单价(元)   数量(公斤)   小计金额(元)   描述");for(i=0;i<list.length;i++)System.out.println(list[i].getNumber()+"  "+list[i].getName()+"  "+list[i].getPrice()+"  "+list[i].getQuantity()+"  "+list[i].getAmount()+"   "+list[i].getDescription());System.out.println("Total amount: " + calTotalAmount());System.out.println();}
}
package v2_3;
import java.util.Scanner;public class ReceiptTest
{private static Item[] productInfo = new Item[5];public static void main(String[] args){           productInfo[0] = new FruitItem("1","Apple",6.7,1,"天水");productInfo[1]=  new ClothItem("2","Tshirt",80,1,"XL");productInfo[2] = new FruitItem("3","Orange",8, 1,"海南");productInfo[3]= new FruitItem("4","Pear",10, 1,"陕西");      productInfo[4] = new ClothItem("5","skirt",150,1,"L");Receipt myReceipt;Scanner in = new Scanner(System.in);String barCode;String judge;        do{myReceipt = new Receipt();System.out.println("请扫描商品添加至购物列表:");barCode = in.next();while(barCode.equals("E")==false){for(int i=0;i<5;i++){if(barCode.equals(productInfo[i].getNumber())){                        myReceipt.addItem(productInfo[i]);System.out.println("商品成功添加!");break;}}barCode = in.next();}myReceipt.printReceipt();System.out.println();System.out.println("继续购物吗?Y/N:");judge = in.next();}while(judge.equals("Y")==true);System.out.println("购物体验结束,谢谢参与!");in.close();}
}

结束

java实现简单的收银员系统相关推荐

  1. JAVA实现简单超市收银系统、控制台输入

    主体 import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Calendar; import ...

  2. C#实现最简单的收银系统

    输入商品单价,数目 按enter累加总价 如果还有商品就继续输入商品单价.数目 在原来的总价基础上累加 如果要退出就按下键盘的Esc按键,计算最终总价 按下任意键结束,否则继续累加商品总价 using ...

  3. java课设超市收银系统_《超市收银系统java课程设计》.doc

    目录 第1章 需求分析1 1.1 超市收银系统需求分析1 1.2 类的说明1 第2章 系统总体设计2 2.1 总体设计2 2.2 设计数据管理子系统3 2.3 设计人机交互子系统5 第3章 详细设计7 ...

  4. 『设计模式』就因为多收了我2块5,我追着收银员问是不是不懂设计模式--策略模式

    23种设计模式+额外常用设计模式汇总 (持续更新) 今天去超市买东西,买了50多块钱的东西,然后收钱的时候他多收了,明明会员要打白金会员打9折,黄金会员95折,我是白金会员因该是9折. 我问她:&qu ...

  5. 超市收银软件测试自学,pos前台收银员培训 免费超市收银软件 视频教程

    作为一个超市店铺收银员,特别是一个新手人员,在刚开始的时候,由于对收银软件不甚了解,常常在使用收银软件的时候,觉得很困惑,不知道如何下手开始.本文以星宇免费超市收银软件为例,一步步教您从安装.设置.入 ...

  6. AI收银员火了 阿里云AI产品体系首次全方位公开

    昨天,刚刚上任的AI收银员就让阿里云官抖收获了第一条10万+,嗯就是下面这个视频. 人类在点餐速度上输给了AI,面对每秒速5个字的点单需求:"五个巧克力.两个香草拿铁,巧克力加奶油--&qu ...

  7. 现在连收银员也要考试了吗?

    小编这里指的收银员是指收银员审核员哦!那么什么是收银员审核员呢?收银审核员简单来说就是核对人员,保证资金安全的人员.那跟普通的收银员有什么区别吗? 收银员指超市,商场,宾馆,酒店等经营场所给顾客结账的 ...

  8. 【原】我是超级收银员,你敢来挑战吗

    微信在最新的iPhone版应用中运营刷卡功能,为了推广该功能,小组成员自主开发了简单的超级收银员小游戏.第一次写前端游戏,严重意识到js写少了,趁这次恶补下,毕竟还年轻,感觉老了脑袋不好使.今天给大家 ...

  9. 收银员是这样给万像做手脚的(转)

    收银员是这样给万像做手脚的这段时间新来了一个男收银的,听说是大网吧出来的.看样子还蛮老实. 问题开始: 这两个月来天天到他那班就钱对不上,多到30块,少到10多块.老板发现问题的严重性,自己一一把上机 ...

最新文章

  1. Digit Sum II( ABC044ARC060)
  2. Hadoop权威指南:HDFS-目录,查询文件系统,删除文件
  3. [ASP.NET] Session 详解
  4. win11+AMD的cpu+3060GPU电脑安装 tensorflow-GPU+cuda11+cudnn
  5. 公网mysql_(看图)为什么无法通过公网登录MySQL?
  6. leetcode动态规划(python与c++)
  7. 什么是RAID(独立磁盘冗余阵列)?
  8. SpringCloud的服务注册中心(三) - 进一步了解 Eureka
  9. 并行算法设计与性能优化_MySQL高性能优化规范建议,从设计,命名,开发等一条线的建议...
  10. centos系统在Visual Studio Code 中使用超级管理员权限保存文件
  11. 爬虫python漏洞群_python3-爬取cnnvd漏洞信息
  12. MapGuide open source开发系列教程四: 体系结构(转贴)
  13. 网页中超长图片转成pdf文档
  14. alice 和 bob 一起 van♂卡牌游戏
  15. 四阶魔方java1002四阶魔方java_4x4四阶魔方一看就懂,超简单入门图文教程2:复原中心块...
  16. Dagger2实战(详细)
  17. sql 判断分钟是偶数数据_mssql sqlserver判断一个整数是否为奇数偶数的方法分享...
  18. java中driver是什么意思_java.sql.SQLException: com.sqljdbc.Driver什么意思啊?
  19. 开发TI DSP需要知道的
  20. python 词云图 WordCloud

热门文章

  1. 飞思卡尔单片机AD模块简述(1)
  2. [原创]K8Cscan 3.8大型内网渗透自定义扫描器(支持批量C段/B段/A段/IP列表/URL列表/跨网段扫描)
  3. XXOO 传说90黑阔论坛
  4. spring中遇到的java.lang.ClassCastException中cannot be cast to报错(初学)
  5. Java 解二元一次方程组
  6. 《Python 案例》平方根
  7. 通过tushare的股票数据绘制股票各曲线图——周K线
  8. 什么人会成为神样的程序员:
  9. 【面试记录】长安汽车一面
  10. 【Python自学笔记】Python基础知识