Java实战项目————吃货联盟订餐系统
2020-07-09 10:04
399 查看
[code]package Demo; import java.util.Scanner; public class Demo001chihuo { public static void main(String[] args) { // TODO Auto-generated method stub String names[]=new String[4]; //保存订餐人姓名 String dishMegs[]=new String[4]; //保存所选信息,包括菜品名及份数 int times[]=new int[4]; //保存送餐时间 String addresses[]=new String[4]; //保存送餐地址 int states[]=new int[4]; //保存订单状态:0表示已预定;1表示已完成 double sumPrices[]=new double[4]; //保存订单的总金额 int praiseNums[]=new int[3]; //点赞数 String dishNames[]= {"清炖王八","爆炒羊腰","大补汤"};//定义一个已存在的菜单 int prices[]= {88,68,58}; //初始化第一条订单信息 names[0]="张三"; dishMegs[0]="清炖王八 2份"; times[0]=12; addresses[0]="秋名山"; sumPrices[0]=196.0;//合计超过50元 免5元配送费 states[0]=1;//表示订单已完成 //初始化第二条订单信息 names[1]="李四"; dishMegs[1]="爆炒羊腰 2份"; times[1]=18; addresses[1]="光明顶"; sumPrices[1]=64.0;//合计超过50元 免5元配送费 states[1]=0;//表示订单预定 Scanner input=new Scanner(System.in); int num=-1; boolean isExit=false;//代表用户是否退出;true是退出 System.out.println("欢迎来到“吃货联盟订餐系统”"); do { //显示菜单 System.out.println("*********************************"); System.out.println("1、我要订餐"); System.out.println("2、查看餐袋"); System.out.println("3、签收订单"); System.out.println("4、删除订单"); System.out.println("5、我熬点赞"); System.out.println("6、退出系统"); System.out.println("*********************************"); System.out.println("请选择你要进行的操作:"); int choose=input.nextInt();//chose代表选择的菜单序号 switch(choose) { case 1: System.out.println("**********我要订餐**********"); boolean isAdd=false;//代表是否可以订餐 for(int j=0;j<names.length;j++) { if(names[j]==null) {//找到一个空值,代表可以订餐 isAdd=true;//可以订餐;添加订单信息 System.out.print("请输入订餐人姓名:"); String name=input.next(); System.out.println("序号"+"\t"+"菜名"+"\t"+"单价"+"\t"+"点赞数"); for(int i=0;i<dishNames.length;i++) { String price=prices[i]+"元"; String praiseNum=(praiseNums[i])>0 ? praiseNums[i] + "赞":"0"; System.out.println((i+1)+"\t"+dishNames[i]+"\t"+price+"\t"+praiseNum); } System.out.print("请选择你要点的菜品编号:"); int chooseDish=input.nextInt(); System.out.print("请选择你需要的份数:"); int number=input.nextInt();//代表键盘 输入的份数 String dishMeg=dishNames[chooseDish-1]+" "+number+"份";//代表菜品总金额 int sumPrice=prices[chooseDish-1]*number; double peisong=(sumPrice>50)?0:5;//如总金额超过50则免5元配送费;反之加5元配送费 System.out.println("请输入送餐时间(10~20点之间的的整点):"); int time=input.nextInt(); while(time<10||time>20) { System.out.println("你的输入有误请重新输入(请选择10~20点之间的整点):"); time=input.nextInt(); } System.out.println("请输入送的地址:"); String addresse=input.next(); System.out.println("订餐成功√"); System.out.println("你订的是:"+dishMeg); System.out.println("送餐时间:"+time); System.out.println("餐费:"+sumPrice+"元"+"\t"+"配送费"+peisong+"元"+"\t"+"合计"+(sumPrice+peisong)+"元"); names[j]=name;//代表从键盘输入的订餐人名字 dishMegs[j]=dishMeg;//代表从键盘输入的菜单 times[j]=time;//代表熊键盘上输入的送餐时间 addresses[j]=addresse;//代表从键盘上输入的送餐地址 sumPrices[j]=sumPrice+peisong;//代表从输入的订餐总金额 break; } } if(!isAdd) { System.out.println("对不起,你的餐袋已满不能订餐"); } break; case 2: System.out.println("**********查看餐袋**********"); System.out.println("序号\t订餐人\t餐品信息\t\t送餐时间\t送餐地址\t\t总金额\t订单状态"); for(int i=0;i<names.length;i++) { if(names[i]!=null) { String state= (states[i]==0)?"已预订":"已完成"; String time=times[i]+"点"; String sumPrice=sumPrices[i]+"元"; System.out.println((i+1)+"\t"+names[i]+"\t"+dishMegs[i]+"\t\t"+time+"\t"+addresses[i]+"\t"+sumPrice+"\t\t"+state); } } break; case 3: System.out.println("**********签收订单**********"); boolean isQianShou=false;//找到要签收的订单 System.out.print("请输入你要签收的订单序号:"); int isXuHao=input.nextInt();//代表从键盘上获取的订单序号 for(int i=0;i<names.length;i++) { if(names[i]!=null && states[i]==0 && isXuHao==i+1) { states[i]=1;//表示订单状态为 已签收/已完成 System.out.println("订单签收成功!"); isQianShou=true;//表示找到客户从键盘上输入的订单序号 }else if(names[i]!=null && states[i]==1 && isXuHao==i+1){ System.out.println("你选择的订单已签收,不能再次进行签收!"); isQianShou=true;//表示已找到次订单 } } if(!isQianShou) { System.out.println("你选择的订单不存在!"); } break; case 4: System.out.println("**********删除订单**********"); boolean isShanChu=false;//标记是否找到要删除的订单 System.out.print("请输入你要删除的订单序号:"); int isDingDan=input.nextInt();//代表键盘获取从键盘上输入的要删除的订单号 for(int i=0;i<names.length;i++) { if(names[i]!=null && states[i]==1 && isDingDan==i+1) { isShanChu=true;//表示已找到此订单 for(int j=0;j<names.length-1;j++) { names[j]=names[j+1]; dishMegs[j]=dishMegs[j+1]; times[j]=times[j+1]; addresses[j]=addresses[j+1]; states[j]=states[j+1]; sumPrices[j]=sumPrices[j+1]; } int ZuiHouYiWei=names.length-1; names[ZuiHouYiWei]=null; dishMegs[ZuiHouYiWei]=null; times[ZuiHouYiWei]=0; addresses[ZuiHouYiWei]=null; states[ZuiHouYiWei]=0; sumPrices[ZuiHouYiWei]=0; System.out.println("删除订单成功!"); break; }else if(names[i]!=null && states[i]==0 && isDingDan==i+1) { System.out.println("你选择的订单未签收,不能删除!"); isShanChu=true;//表示已找到此订单 break; } } if(!isShanChu){ System.out.println("你要删除的订单不存在!"); } break; case 5: System.out.println("**********我要点赞**********"); System.out.println("序号"+"\t"+"菜名"+"\t"+"单价"); for(int i=0;i<dishNames.length;i++) { String price=prices[i]+"元"; String praiseNum=(praiseNums[i])>0?praiseNums[i]+"赞":""; System.out.println((i+1)+"\t"+dishNames[i]+"\t"+price+"\t"+praiseNum); } System.out.print("请选择你要点赞的菜品序号:"); int praiseNum=input.nextInt(); praiseNums[praiseNum-1]++;//代表点赞加1 System.out.println("点赞成功!"); break; case 6: System.out.println("**********退出系统**********"); isExit=true; break; default: isExit=true; break; } if(!isExit) { System.out.println("输入0返回"); num=input.nextInt(); }else { break; } }while(num==0); System.out.println("感谢你的支持,欢迎你下次光临"); } }
相关文章推荐
- 【手把手】JavaWeb 入门级项目实战 - 文章发布系统 (第一节)
- 【手把手】JavaWeb 入门级项目实战 -- 文章发布系统 (第十节)
- 视频教程-权限管理系统-项目实战-Java
- 【手把手】JavaWeb 入门级项目实战 -- 文章发布系统 (第五节)
- 吃货联盟订餐系统 java
- Drupal项目实战:公司员工订餐系统
- 【手把手】JavaWeb 入门级项目实战 -- 文章发布系统 (第九节)
- 【手把手】JavaWeb 入门级项目实战 -- 文章发布系统 (作者:剽悍一小兔)第七、八、九节学习随笔
- Java Spring boot 企业微信点餐系统 项目实战视频教程
- Java实战项目-移动电商秒杀系统Seckill总结
- 大型分布式电商项目实战(JAVA)高并发集群分布式系统架构分布式(分布式多模块+SSM+Mysql+Redis+ActiveMQ)
- 网上订餐系统项目实战
- 【手把手】JavaWeb 入门级项目实战 -- 文章发布系统 (第五节)
- JavaWeb 入门级项目实战 -- 文章发布系统 (第五节)
- Java——吃货联盟订餐系统
- java项目实战-超市管理系统(六)实体源码与分析
- 【精编重制版】JavaWeb 入门级项目实战 -- 文章发布系统 (第一节)
- Java项目实战之在线考试系统的实现(系统介绍)
- 视频教程-项目实战:大型企业会议室预定系统-Java
- Java基础(十六)——项目实战——交通灯管理系统