吃货联盟
一、基本知识涉及:
1、程序基本概念
变量
数据类型
- 流程控制
顺序
选择
循环
跳转语句
- 数组
二、学习方法
1、了解项目需求
2、分析思路
3、罗列功能的只是点,选择复习
4、循序渐进(实现一个功能测试一个功能)
5、拆解解时实现功能,最后组合完成
四、项目框架整体搭建
1、数据主题(多个数组)
菜品信息(序号,菜名,单价)-订餐、点赞
订单信息(序号 订餐人 餐品信息 送餐时间 送餐 地址 总金额 订单状态 )查看餐袋时
下标关联
2、欢迎菜单展示
控制台输出语句
3、退出(选择6、选择1-6之外的数字)
跳转语句-break;
- 功能区
首先运行程序后会出现类似于home的主菜单区,一共有六个功能功能如下。
(1)我要订餐
(2)查看餐袋
(3)签收订单
(4)删除订单
(5)我要点赞
(6)退出系统
根据对应序号输入进入各自的功能区。如果输入数值为6和非(1至5的数值),都会执行推出系统。
接下来先进入
(1)我要订餐
输入1之后
显示一句话“请输入订餐人姓名:”,填写好按回车(填写任意数值都可以)
会显示菜单(由System.out和for循环函数实现)和一句话“请填写菜单编号”只可以填写对应的编号,否则会系统提示请重新输入(while循环)
显示需要的份数(int上限),输入
显示需要的送餐时间,只可填写对应时间,否则会系统提示请重新输入(while循环)
显示输入地址,输入
显示订单成功,订单的信息和输入返回,订单的信息包括菜品份数,价格配送费,总价,送达时间。
基本流程完毕,如果连续订单达到系统的最大值,还继续我要订餐功能会出现以形况:
“对不起您的餐袋已满!”输入零返回主菜单
我要订餐功能完毕
(2)查看餐袋
主菜单输入2进入查看餐袋功能区,显示目前的所有订单,每份订单的订单信息,订单的信息包括订单序号,订餐人,菜品和份数,送餐地址,总价,送达时间,订单状态。输入零返回主菜单
查看餐袋功能完毕
- 签收订单
主菜单输入3后进入,显示 “请选择要签收的订单序号”序号为查看餐袋功能中的序号,输入序号
序号如果不能对应到餐袋中的序号会显示,订单不存在,输入0返回主菜单,如果输入的不是0则会退出程序。(for循环和if ,esle if)
序号如果可以对应餐袋序号会有以下两种结果
第一种:“您选择的订单已完成签收,不能再次签收!”“输入0返回”,如果输入的不是0则会退出程序。
第二种:“订单签收成功!请去餐袋查看”“输入0返回”,如果输入的不是0则会退出程序。
订单签收功能完毕
(4)删除订单
主菜单输入4后进入,显示“请输入您要删除的订单序号:”序号为查看餐袋功能中的序号,输入序号
序号如果不能对应到餐袋中的序号会显示,您要删除的订单不存在,输入0返回主菜单,如果输入的不是0则会退出程序。(for循环和if ,esle if)
序号如果可以对应餐袋会有以下两种结果
第一种:序号为已签收订单,删除订单成功!输入0返回。这时序号大于被删除订单序号的订单序号会自动减一(for循环)。如果输入的不是0则会退出程序。
第二种:您选择的订单未签收,不能删除!输入0返回,如果输入的不是0则会退出程序。
删除订单功能完毕
(5)我要点赞
主菜单输入5后进入,“显示菜品信息(包括序号,菜名,单价和点赞数)和选择您要点赞的菜品序号”
只可以填写对应的编号,否则会系统提示请重新输入(while循环)
填写对应序号后,显示“点赞成功!输入0返回:”如果输入的不是0则会退出程序。可以再次进入我要点赞功能区查看点赞情况,或者再下次(1)我要订餐功能区种也可看到。
我要点赞功能完毕
- 退出系统
- 主菜单输入6(非1至5的数值)后进入,显示“谢谢使用,欢迎下次光临!”
程序退出运行!
退出系统功能完毕
五、整体框架分析
1、用do-whlie循环
先写框架do{
}while( 条件是输入0返回);
System,out,println(“谢谢使用,欢迎下次光临!”);
所以我们定义一个变量
在do 之前定义
Int num = -1;// 用户输入0返回时输入分数字,num = 0 时重复显示主菜单;num在用户每次订 餐操作后进行提示
2、switch分支