package Task; import java.util.Scanner; public class DingCan01 { public static void main(String[] args){ //数据主体,一组订单信息 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];//总金额 //初始化2条订单信息 names[0]="张三"; dishMegs[0]="鱼香肉丝 1份"; times[0]=12; addresses[0]="观日路48号"; states[0]=0; sumPrices[0]=24.0; names[1]="李四"; dishMegs[1]="红烧带鱼 2份"; times[1]=18; addresses[1]="长乐路06号"; states[1]=1; sumPrices[1]=76.0; //数据主体,一组餐品信息 String[] dishNames={"红烧带鱼","鱼香肉丝","时令蔬菜"}; double[] prices={38.0,18.0,10.0};//餐品单价 int[] praiseNums=new int[3];//点赞数 Scanner input=new Scanner(System.in); int num=-1; 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.print("请选择:"); int choose=input.nextInt();//记录用户选择的编号 boolean isAdd=false;//true:记录找到一个为空的位置,可以插入 false:没有找到 //根据用户输入的功能编号,执行相应的功能 while(choose>6||choose<1){ System.out.print("输入错误,请输入有效编号:"); choose = input.nextInt(); } boolean isExit = false; // 标志用户是否退出系统: true:退出系统 switch(choose){ case 1: //1、我要订餐 System.out.println("********我要订餐********"); //1.查找要插入的位置,记录下来 for(int i=0;i<names.length;i++){ if(names[i]==null){ isAdd=true;//记录已找到一个为空的位置 //执行插入 //a.显示所有可供选择的餐品信息 System.out.println("序号\t餐品名\t单价\t\t点赞数"); for(int j=0;j<dishNames.length;j++){ String price=prices[j]+"元"; String praise=praiseNums[j]+"赞"; System.out.println((j+1)+"\t"+dishNames[j]+"\t"+price+"\t"+praise); } //输入所选餐品编号以及分数 System.out.print("请选择所订餐品序号:"); int chooseDish=input.nextInt(); while(chooseDish>dishNames.length||chooseDish<1) { System.out.print("对不起,您输入的序号没有信息,请输重新输入:"); chooseDish = input.nextInt(); } System.out.print("请选择所定份数"); int number=input.nextInt(); String dishMeg=dishNames[chooseDish-1]+" "+number+"份"; //b.输入订餐人姓名 System.out.print("请输入订餐人姓名:"); String name=input.next(); //c.输入送餐时间 System.out.print("请输入送餐时间(10~20整点送餐):"); int time=input.nextInt(); //如果输错了,重复输入 while(time<10||time>20){ System.out.print("对不起,您输入有误,请输入人10~20之间的整数:" ); time=input.nextInt(); } //d.输入送餐地址 System.out.print("请输入送餐地址"); String address=input.next(); //e.计算餐费 double sumPrice=prices[chooseDish-1]*number; //d.送餐费,当餐费达到50元时,免6元送餐费 double deliCharge=sumPrice>=50?0.0:6.0; //显示订单信息 System.out.println("订餐成功"); System.out.println("您定的是:"+dishMeg); System.out.println("订餐人:"+name); System.out.println("送餐时间:"+time+"点"); System.out.println("送餐地址:"+address); System.out.println("餐费:"+sumPrice+",送餐费:"+deliCharge+"元"); System.out.println("总金额“:"+(sumPrice+deliCharge)+"元"); //保存数据 names[i]=name; dishMegs[i]=dishMeg; times[i]=time; addresses[i]=address; sumPrices[i]=sumPrice+deliCharge; break; } } //如果没有找到为空的位置,则提示信息 if(!isAdd){ System.out.println("对不起你的订单已满!"); } break; case 2: //2、查看订单 System.out.println("********查看订单********"); System.out.println("序号\t订餐人\t所订餐品信息\t送餐时间\t送餐地址\t\t总金额\t状态"); //遍历数组 for(int i=0;i<names.length;i++){ if(names[i]!=null){ String time =times[i]+"点"; String sumPrice=sumPrices[i]+"元"; String state=states[i]==0?"已预定":"已完成"; System.out.println((i+1)+"\t"+names[i]+"\t\t"+dishMegs[i]+"\t"+time+"\t\t"+addresses[i]+"\t"+sumPrice+"\t"+state); } } break; case 3: //3、删除订单 break; case 4: //4、签收订单 System.out.print("********请输入要签收的订单序号:"); int signOrderId=input.nextInt(); boolean isFind=false; for(int i=0;i<names.length;i++){ if(names[i]!=null && states[i]==1 && signOrderId==i+1) { System.out.println("对不起,您选择的订单已经完成签收,不能再次签收!"); isFind=true; break; }else if(names[i]!=null && states[i]==0 && signOrderId==i+1){ states[i]=1; System.out.println("订单签收成功!"); isFind=true; break; } } if(!isFind){ System.out.println("对不起,此订单不存在!"); } break; case 5: //5、我要点赞 break; case 6: //6、退出系统 isExit=true; break; } if (!isExit) { System.out.print("输入0返回:"); num = input.nextInt(); while (num != 0) { System.out.print("输入错误,输入0返回:"); num = input.nextInt(); } }else{ break; } }while(num==0); System.out.println("谢谢使用,欢迎下次光临"); }}//未完待续。。。
原文地址:https://www.cnblogs.com/xiaozhejun/p/10252960.html
时间: 2024-08-12 19:54:09