一、小票如图所示


二、代码

(1)Order类

package case1;
import java.util.Calendar;
public class Order {private static int count = 0;private int id;private Shop shop;private boolean takeAway;private Product[] products;private String payType;private Calendar time = Calendar.getInstance();public Order(Shop shop, boolean takeAway, Product[] products, String payType) {super();this.shop = shop;this.takeAway = takeAway;this.products = products;this.payType = payType;this.id = Order.count + 1;Order.count++;}private void println() {System.out.println("-----------------------------------------------");}@SuppressWarnings("deprecation")public void print() {//打印第一行:head信息System.out.print(this.takeAway ? "带" : "堂");System.out.println(" 单号:" + this.id);//打印第二行:店铺信息this.shop.print();//打印第三行:时间和收银int y = time.get(Calendar.YEAR);int m = time.get(Calendar.MONTH) + 1;int d = time.get(Calendar.DAY_OF_MONTH);int h = time.get(Calendar.HOUR);int min = time.get(Calendar.MINUTE);System.out.print("时间:" + y + "-" + m +"-" + d +" " + h + ":" + min);System.out.println("\t收银:一般收银");//打印商品列表主体部分println();String msg = String.format("%-15s\t数量\t单价\t金额","商品名称");System.out.println(msg);println();//循环打印products里的每一个商品信息int num = 0;double amount = 0;for(Product p : this.products) {p.print();num += p.getUnit();if(p.isHalfPrice())amount += p.getPrice() / 2;elseamount += p.getPrice();}println();System.out.println(String.format("%-15s\t\t\t%6d","品项总计:",num));System.out.println(String.format("%-15s\t\t\t%6.2f","总计应付:",amount));System.out.println(String.format("%-15s\t\t\t%6.2f","已付:",amount));println();}
}

(2)Product类

package case1;public class Product {private int id;private double price;private int unit;private boolean isHalfPrice;private String name;private String hotLevel;private String sugarLevel;public Product(int id, double price, int unit, boolean isHalfPrice, String name, String hotLevel,String sugarLevel) {super();this.id = id;this.price = price;this.unit = unit;this.isHalfPrice = isHalfPrice;this.name = name;this.hotLevel = hotLevel;this.sugarLevel = sugarLevel;}public int getUnit() {return unit;}public double getPrice() {return price;}public boolean isHalfPrice() {return isHalfPrice;}public void print() {    String msg = String.format("%-15s\t%dX%10.2f%10.2f",name,unit,price,unit*price);System.out.println(msg);System.out.println(" " + this.hotLevel + "," + this.sugarLevel);if(this.isHalfPrice) {msg = String.format("%-30s\t\t%6.2f"," 第二杯半价",-.5*price);System.out.println(msg);}}
}

(3)Shop类

package case1;public class Shop {private int id;private String name;private String location;private String phone;public Shop(int id, String name, String location, String phone) {this.id = id;this.name = name;this.location = location;this.phone = phone;}public void print() {String msg = "";msg = String.format("%s %s 电话:%s",this.name,this.location,this.phone);System.out.println(msg);}}

(4)NaiCha(Main class)

package case1;public class Naicha {public static void main(String[] args) {//(1)生成店铺信息Shop shop = new Shop(1,"CoCo都可","印象城店","17770007272");//第一单//(2)当前客户开始点单Product p1 = new Product(7,18,1,false,"拿铁咖啡大杯","热","");Product p2 = new Product(10,11,1,true,"鲜芋奶茶","常规冰","半糖");Product [] plist1 = {p1,p2};//(3)生成订单信息Order o1 = new Order(shop,true,plist1,"微信");//(4)打印订单o1.print();//第二单//(2)当前客户开始点单Product s1 = new Product(3,5,1,false,"柠檬水","少冰","正常糖");Product s2 = new Product(9,16,1,true,"杨枝甘露","常温","半糖");Product s3 = new Product(5,12,1,false,"芝士奶盖","多冰","多糖");Product [] plist2 = {s1,s2,s3};//(3)生成订单信息Order o2 = new Order(shop,false,plist2,"支付宝");//(4)打印订单o2.print();}}

【java】小票:设计一张奶茶店的小票相关推荐

  1. 奶茶店小票代码java_由奶茶店突发奇想开始了Java设计模式:享元模式

    定义 享元模式是对象的结构模式,享元模式以共享的方式高效的支持大量的细粒度对象,主要用于减少创建对象的数量,以减少内存占用和提高性能 享元对象能做到共享的关键在于区分了内蕴状态和外蕴状态 内蕴状态是存 ...

  2. Java项目:JSP在线奶茶店销售网站平台

    作者主页:源码空间站2022 简介:Java领域优质创作者.Java项目.学习资料.技术互助 文末获取源码 项目介绍 本系统分为前后台,分为普通用户和管理员两种角色: 管理员角色包含以下功能: 管理员 ...

  3. web期末网站设计大作业 奶茶店网站美食餐饮网站设计与实现(HTML+CSS+JavaScript)

  4. 最新2023基于微信小程序的奶茶店自助饭店点餐订餐系统平台(SSM+mysql)-JAVA.VUE【数据库设计、论文、毕设源码、开题报告】

    摘 要 使用智能手机的用户经过多年的使用习惯,已经越来越不喜欢安装各种的APP,除了正常生活和工作所必须的APP,不喜欢因为喜欢某些内容而被强制安装APP软件了.最近几年,随着微信生态的布局,通过开发 ...

  5. Springboot奶茶店点餐系统vtj89计算机毕业设计-课程设计-期末作业-毕设程序代做

    Springboot奶茶店点餐系统vtj89计算机毕业设计-课程设计-期末作业-毕设程序代做 [免费赠送源码]Springboot奶茶店点餐系统vtj89计算机毕业设计-课程设计-期末作业-毕设程序代 ...

  6. python爬取饿了么奶茶店外卖数据_六千外卖代运营-外卖知识(159):靠一张传单,一个月卖1万杯奶茶...

    原标题:六千外卖代运营-外卖知识(159):靠一张传单,一个月卖1万杯奶茶 1.3方面进行市场调研 做好了市场调研,清楚了你的用户是谁,才能知道用户在哪儿,再是解决用户怎么来.做好相关准备工作,跑到奶 ...

  7. 基于javaweb的在线奶茶店系统(java+jsp+javascript+servlet+mysql)

    基于javaweb的在线奶茶店系统(java+jsp+javascript+servlet+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/ide ...

  8. 2023基于微信小程序的奶茶店自助饭店点餐订餐系统平台(SSM+mysql)-JAVA.VUE(论文+开题报告+运行)

    摘 要 使用智能手机的用户经过多年的使用习惯,已经越来越不喜欢安装各种的APP,除了正常生活和工作所必须的APP,不喜欢因为喜欢某些内容而被强制安装APP软件了.最近几年,随着微信生态的布局,通过开发 ...

  9. java毕业生设计蛋糕店会员系统的设计与实现计算机源码+系统+mysql+调试部署+lw

    java毕业生设计蛋糕店会员系统的设计与实现计算机源码+系统+mysql+调试部署+lw java毕业生设计蛋糕店会员系统的设计与实现计算机源码+系统+mysql+调试部署+lw 本源码技术栈: 项目 ...

最新文章

  1. matlab中cumsum函数的使用
  2. SAP Spartacus autofocus directive,如何锁住使用了directive的元素本身?
  3. git@github.com: Permission denied (publickey). fatal: Could not read from remote repository.
  4. 8个JavaScript库可更好地处理本地存储
  5. 什么是MPLS?多协议标签交换
  6. vue后台如何刷新过期的token_Vue刷新token,判断token是否过期
  7. 【渝粤教育】国家开放大学2019年春季 2718动物生理基础 参考试题
  8. Luogu3431 [POI2005]AUT-The Bus
  9. 数据分析实战项目:SQL分析淘宝用户行为
  10. C程序设计试题汇编(第三版)谭浩强主编 第二章 选择题解析+总结
  11. 如何恢复手动删除的微信聊天记录?2个简单高效方法推荐
  12. c语言输出法雷序列,法雷(法里)序列 - osc_h0wb1wlt的个人空间 - OSCHINA - 中文开源技术交流社区...
  13. 西门子TIA博途软件多版本共存安装教程
  14. JSONObject.parseObject()
  15. 1607_PC汇编语言_汇编语言简介
  16. 实验4mysql查询数据_数据库实验四 复杂查询.doc
  17. win11,google chrome没有声音怎么办
  18. JS 判断Chrome内核的360浏览器,并禁用
  19. 习题4-5 换硬币 (20分) 将一笔零钱换成5分、2分和1分的硬币,要求每种硬币至少有一枚,有几种不同的换法?
  20. 文件属性修改器(C#)

热门文章

  1. python3 def download_python3下载抖音视频的完整代码
  2. 基于javaweb+jsp的服装店门店信息管理系统(JavaWeb JSP MySQL Servlet SSM SpringBoot Layui Ajax)
  3. 华为云 open day,带你看看别人家的公司
  4. 【ABAP】MFBF过账到质量检验库存类型Demo
  5. 【Ant Design Charts】将mapbox地图标记语言设置成可切换中英文
  6. 通过代码创建一个文件a.txt 然后写一个方法,控制台循环输入内容,然后通过gbk的编码格式保存到 a.txt中(要求可以追加),直到输入exit结束 再写一个方法,要求用字符缓冲流读取a.tx
  7. 安装mmdetection3d
  8. 购买正版windows分级
  9. C语言死循环写我爱你,c语言编我爱你
  10. 数的三次方(C++算法——二分)