博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
小项目,吃货联盟,java初级小项目,源代码
阅读量:4327 次
发布时间:2019-06-06

本文共 6301 字,大约阅读时间需要 21 分钟。

1:项目的实现效果、功能如图所示。

2:项目的源代码如下:

 

1 import java.util.Scanner;  2   3 /**  4  * 吃货联盟订餐管理系统  5  *   6  */  7 public class OrderingMsg {  8     public static void main(String[] args) {  9         // 数据主体:一组订单信息 10         String[] names = new String[4]; // 订餐人名称 11         String[] dishMegs = new String[4]; // 所选菜品 12         int[] times = new int[4]; // 送餐时间 13         String[] addresses = new String[4]; // 送餐地址 14         int[] states = new int[4]; // 订单状态: 0:已预定 1:已完成 15         double[] sumPrices = new double[4]; // 总金额 16          17         //初始化2个订单信息 18         names[0] = "张晴"; 19         dishMegs[0] = "红烧带鱼 2份"; 20         times[0] = 12; 21         addresses[0] = "天成路207号"; 22         sumPrices[0] = 76.0; 23         states[0] = 1; 24          25         names[1] = "张晴"; 26         dishMegs[1] = "鱼香肉丝 2份"; 27         times[1] = 18; 28         addresses[1] = "天成路207号"; 29         sumPrices[1] = 20.0; 30          31          32         // 供选择的菜品信息 33         String[] dishNames = { "红烧带鱼", "鱼香肉丝", "时令鲜蔬" }; // 菜品名称 34         double[] prices = new double[] { 38.0, 20.0, 10.0 }; // 菜品单价 35         int[] praiseNums = new int[3]; 36  37         Scanner input = new Scanner(System.in); 38         int num = -1; // 用户输入0返回主菜单,否则退出系统 39         boolean isExit = false; // 标志用户是否退出系统: true:退出系统 40  41         System.out.println("\n欢迎使用“吃货联盟订餐系统”"); 42         // 循环:显示菜单,根据用户选择的数字执行相应功能 43         do { 44             // 显示菜单             45             System.out.println("****************************"); 46             System.out.println("1、我要订餐"); 47             System.out.println("2、查看餐袋"); 48             System.out.println("3、签收订单"); 49             System.out.println("4、删除订单"); 50             System.out.println("5、我要点赞"); 51             System.out.println("6、退出系统"); 52             System.out.println("****************************"); 53             System.out.print("请选择:"); 54             int choose = input.nextInt(); // 记录用户选择的功能编号 55             boolean isAdd = false;  //记录是否可以订餐 56             boolean isSignFind = false;  //找到要签收的订单 57             boolean isDelFind = false;  //找到要删除的订单 58             // 根据用户选择的功能编号执行相应功能 59             switch (choose) { 60             case 1: 61                 // 我要订餐 62                 System.out.println("***我要订餐***"); 63                 for (int j = 0; j < names.length; j++) {                     64                    if(names[j] == null){  //找到第一个空位置,可以添加订单信息 65                        isAdd = true;  //置标志位,可以订餐 66                        System.out.print("请输入订餐人姓名:"); 67                        String name = input.next();  68                     // 显示供选择的菜品信息 69                     System.out.println("序号" + "\t" + "菜名"+"\t"+"单价"); 70                     for (int i = 0; i < dishNames.length; i++) { 71                         String price = prices[i] + "元"; 72                         String priaiseNum = (praiseNums[i]) > 0 ? praiseNums[i] 73                                 + "赞" : ""; 74                          75                         System.out.println((i + 1) + "\t" + dishNames[i] + "\t"    +price+"\t"+ priaiseNum); 76                     } 77                     // 用户点菜 78                     System.out.print("请选择您要点的菜品编号:"); 79                     int chooseDish = input.nextInt(); 80                     System.out.print("请选择您需要的份数:"); 81                     int number = input.nextInt(); 82                     String dishMeg =  dishNames[chooseDish - 1] 83                             +" "+ number + "份"; 84                     double sumPrice = prices[chooseDish - 1] * number; 85                     //餐费满50元,免送餐费10元 86                     double deliCharge = (sumPrice>=50)?0:6;                    87  88                     System.out.print("请输入送餐时间(送餐时间是10点至20点间整点送餐):"); 89                     int time = input.nextInt(); 90                     while (time < 10 || time > 20) { 91                         System.out.print("您的输入有误,请输入10~20间的整数!"); 92                         time = input.nextInt(); 93                     } 94                     System.out.print("请输入送餐地址:"); 95                     String address = input.next(); 96                                          97                     //无需添加状态,默认是0,即已预定状态。 98                     System.out.println("订餐成功!"); 99                     System.out.println("您订的是:"+dishMeg);100                     System.out.println("送餐时间:"+time+"点");101                     System.out.println("餐费:"+sumPrice+"元,送餐费"+deliCharge+"元,总计:"+(sumPrice+deliCharge)+"元。");102                     103                     //添加数据104                     names[j] = name;105                     dishMegs[j] = dishMeg;106                     times[j] = time;107                     addresses[j] = address;108                     sumPrices[j] = sumPrice+deliCharge;109                     110                     break;                    111                    }112                 }113                 if(!isAdd){114                     System.out.println("对不起,您的餐袋已满!");115                 }116                 break;117             case 2:118                 // 查看餐袋119                 System.out.println("***查看餐袋***");120                 System.out.println("序号\t订餐人\t餐品信息\t\t送餐日期\t送餐地址\t\t总金额\t订单状态");121                 for(int i=0;i
0 ? praiseNums[i]199 + "赞" : "0赞";200 201 System.out.println((i + 1) + "\t" + dishNames[i] + "\t" +price+"\t"+ priaiseNum);202 }203 System.out.print("请选择您要点赞的菜品序号:");204 int priaiseNum = input.nextInt();205 praiseNums[priaiseNum-1]++; //赞数加1206 System.out.println("点赞成功!");207 break;208 case 6:209 // 退出系统210 isExit = true;211 break;212 default:213 //退出系统214 isExit = true;215 break;216 }217 if (!isExit) {218 System.out.print("输入0返回:");219 num = input.nextInt();220 } else {221 break;222 }223 } while (num == 0);224 System.out.println("谢谢使用,欢迎下次光临!");225 }226 }

 

转载于:https://www.cnblogs.com/benben2013A/p/7084538.html

你可能感兴趣的文章
小D课堂 - 新版本微服务springcloud+Docker教程_4-03 高级篇幅之Ribbon负载均衡源码分析实战...
查看>>
小D课堂 - 新版本微服务springcloud+Docker教程_4-06 Feign核心源码解读和服务调用方式ribbon和Feign选择...
查看>>
小D课堂 - 新版本微服务springcloud+Docker教程_4-05 微服务调用方式之feign 实战 订单调用商品服务...
查看>>
小D课堂 - 新版本微服务springcloud+Docker教程_5-02 Netflix开源组件断路器
查看>>
小D课堂 - 新版本微服务springcloud+Docker教程_5-01分布式核心知识之熔断、降级
查看>>
小D课堂 - 新版本微服务springcloud+Docker教程_5-04 feign结合hystrix断路器开发实战下...
查看>>
小D课堂 - 新版本微服务springcloud+Docker教程_5-03 feign结合hystrix断路器开发实战上...
查看>>
小D课堂 - 新版本微服务springcloud+Docker教程_6-01 微服务网关介绍和使用场景
查看>>
小D课堂 - 新版本微服务springcloud+Docker教程_5-05熔断降级服务异常报警通知
查看>>
小D课堂 - 新版本微服务springcloud+Docker教程_6-03 高级篇幅之zuul常用问题分析
查看>>
小D课堂 - 新版本微服务springcloud+Docker教程_5-08 断路器监控仪表参数
查看>>
小D课堂 - 新版本微服务springcloud+Docker教程_6-02 springcloud网关组件zuul
查看>>
小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_2-1.快速搭建SpringBoot项目,采用Eclipse...
查看>>
小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_1-4.在线教育后台数据库设计...
查看>>
小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_2-3.热部署在Eclipse和IDE里面的使用...
查看>>
小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_1-3.在线教育站点需求分析和架构设计...
查看>>
小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_2-4.后端项目分层分包及资源文件处理...
查看>>
小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_2-2.快速搭建SpringBoot项目,采用IDEA...
查看>>
小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_3-5.PageHelper分页插件使用
查看>>
小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_5-6.微信扫码登录回调本地域名映射工具Ngrock...
查看>>