import java.util.Arrays;
import java.util.Scanner;
public class DingCan {
public static void main(String[] args) {
//菜品组
String[] cd = {"蔬菜沙拉", "炭烧鸡排", "黑椒牛排"};
//单价组
int[] dj = {16, 23, 26};
//点赞组
int[] dz = {0, 0, 0};
//用来储存各类菜品总额
int slze = 0;
int jpze = 0;
int npze = 0;
//记不清了,反正是变量
int na = 1;
int bus = 0;
//各类需求数组
String[] name2 = new String[10];
name2[0] = "沙宣";
name2[1] = "沙宣";
String[] cpxx2 = new String[10];
cpxx2[0] = "蔬菜沙拉2份";
cpxx2[1] = "黑椒牛排2份";
String[] scdi2 = new String[10];
scdi2[0] = "天成路207号";
scdi2[1] = "天成路207号";
String[] ddzt2 = new String[10];
Arrays.fill(ddzt2, "已预订");
ddzt2[0] = "已完成";
String[] scsj2 = new String[10];
scsj2[0] = "10月3日13时";
scsj2[1] = "10月17日19时";
int[] zje2 = new int[10];
zje2[0] = 38;
zje2[1] = 52;
//外层循环(可使用指定指令退出)
boolean i = true;
while (i) {
//主体结构
System.out.println("欢迎使用吃货联盟订餐系统" + "\n" + "****************");
Scanner sc = new Scanner(System.in);
System.out.println(
"1、我要订餐" + "\n"
+ "2、查看餐袋" + "\n"
+ "3、签收订单" + "\n"
+ "4、删除订单" + "\n"
+ "5、我要点赞" + "\n"
+ "6、退出系统" + "\n"
+ "****************" + "\n"
+ "请选择:");
//各主体分支
//分支:1,我要订餐
int lb = sc.nextInt();
if (lb == 1) {
int xh = 0;
System.out.println("****************我要订餐****************");
System.out.println("序号" + " " + "名称" + " " + "单价(元)" + " " + "点赞数");
//循环输出数组:菜品序号、名称、单价、点赞数
for (int a = 0; a < cd.length; a++) {
xh = xh + 1;
System.out.println(xh + " " + cd[a] + " " + dj[a] + " " + dz[a]);
}
System.out.println("****************");
//菜品选择(判断)以及份数、总金额语句
//此循环:存储各类数据到数组
boolean cpx = true;
while (cpx) {
System.out.println("请输入订餐人姓名:");
String name1 = sc.next();
na = na + 1;
name2[na] = name1;
System.out.println("请输入菜品序号:");
int xh1 = sc.nextInt();
switch (xh1) {
case 1:
System.out.println("请输入份数:");
int slfs = sc.nextInt();
//总金额
slze = slfs * dj[0];
//不足50元时增加6元配送费
if (slze < 50) {
slze = slze + 6;
}
//储存菜品信息到数组
cpxx2[na] = cd[0] + slfs + "份";
//储存总金额
zje2[na] = slze;
//终止次循环
cpx = false;
break;
case 2:
System.out.println("请输入份数:");
int jpfs = sc.nextInt();
jpze = jpfs * dj[1];
if (jpze < 50) {
jpze = jpze + 6;
}
cpxx2[na] = cd[1] + jpfs + "份";
zje2[na] = jpze;
cpx = false;
break;
case 3:
System.out.println("请输入份数:");
int npfs = sc.nextInt();
npze = npfs * dj[2];
if (npze < 50) {
npze = npze + 6;
}
cpxx2[na] = cd[2] + npfs + "份";
zje2[na] = npze;
cpx = false;
break;
default:
System.out.println("菜品序号输入有误!");
}
}
//送餐时间(判断)及送餐地址语句
boolean scsj = true;
while (scsj) {
System.out.println("请输入送餐时间(整点送餐:10点-20点):");
int sj = sc.nextInt();
scsj2[na] = "11月2日" + sj + "时";
if (sj <= 20 && sj >= 10) {
System.out.println("请填写详细的送餐地址:");
String scdz = sc.next();
scdi2[na] = scdz;
System.out.println("****************下单成功****************");
System.out.println("序号" + " " + "订餐人" + " " + "餐品信息" + " " + "送餐日期"
+ " " + "送餐地址" + " " + "总金额(不足50元时需缴纳6元配送费)" + " " + "订单状态");
System.out.println(1 + " " + name2[na] + " " + cpxx2[na] + " "
+ scsj2[na] + " " + scdi2[na] + " " + zje2[na] + " " + ddzt2[na]);
System.out.println("****************输入任意数字返回主菜单****************");
int fh = sc.nextInt();
break;
} else if (sj == 0) {
break;
} else {
System.out.println("*************不在配送时间内***************"
+ "\n" + "****************重新输入或输入0返回主菜单****************");
}
}
}
//查看餐袋
else if (lb == 2) {
int fg = 0;
System.out.println("****************查看餐袋****************");
System.out.println("序号" + " " + "订餐人" + " " + "餐品信息" + " " + "送餐日期"
+ " " + "送餐地址" + " " + "总金额(不足50元时需缴纳6元配送费)" + " " + "订单状态");
for (int u = 0; u <= zje2.length - (zje2.length - na); u++) {
fg = fg + 1;
System.out.println(fg + " " + name2[u] + " " + cpxx2[u] + " "
+ scsj2[u] + " " + scdi2[u] + " " + zje2[u] + " " + ddzt2[u]);
}
System.out.println("****************输入任意数字返回主菜单****************");
int ry = sc.nextInt();
}
//签收语句
else if (lb == 3) {
boolean iu = true;
while (iu) {
System.out.println("****************签收订单****************");
System.out.println("序号" + " " + "订餐人" + " " + "餐品信息" + " " + "送餐日期"
+ " " + "送餐地址" + " " + "总金额(不足50元时需缴纳6元配送费)" + " " + "订单状态");
for (int u = 0; u <= zje2.length - (zje2.length - na); u++) {
System.out.println(u + 1 + " " + name2[u] + " " + cpxx2[u] + " "
+ scsj2[u] + " " + scdi2[u] + " " + zje2[u] + " " + ddzt2[u]);
}
System.out.println("请输入需要签收的订单序号:");
int qsdd = sc.nextInt();
//得到下标
int qsdd2 = qsdd - 1;
//判断是否为已完成订单,是则可以签收,否则重新输入
if (ddzt2[qsdd2].equals("已预订") && qsdd2 <= na) {
ddzt2[qsdd2] = "已完成";
System.out.println("****************签收成功****************");
System.out.println("****************输入任意数字返回主菜单****************");
int qsdd3 = sc.nextInt();
iu = false;
} else {
System.out.println("****************输入错误,请重新输入****************");
}
}
}
//删除订单
else if (lb == 4) {
boolean ip = true;
while (ip) {
System.out.println("****************删除订单****************");
System.out.println("序号" + " " + "订餐人" + " " + "餐品信息" + " " + "送餐日期"
+ " " + "送餐地址" + " " + "总金额(不足50元时需缴纳6元配送费)" + " " + "订单状态");
for (int a = 0; a <= zje2.length - (zje2.length - na); a++) {
System.out.println(a + 1 + " " + name2[a] + " " + cpxx2[a] + " "
+ scsj2[a] + " " + scdi2[a] + " " + zje2[a] + " " + ddzt2[a]);
}
System.out.println("****************请输入需要删除的订单序号(仅支持已完成订单)****************");
int scxh = sc.nextInt();
//得到下标
int scsh = scxh - 1;
//移形换位(逐步向前覆盖,达到删除效果)
if (ddzt2[scsh].equals("已完成")) {
for (int v = scsh; v < zje2.length - 1 - scsh; scsh++) {
name2[scsh] = name2[scsh + 1];
cpxx2[scsh] = cpxx2[scsh + 1];
scsj2[scsh] = scsj2[scsh + 1];
scdi2[scsh] = scdi2[scsh + 1];
zje2[scsh] = zje2[scsh + 1];
ddzt2[scsh] = ddzt2[scsh + 1];
}
System.out.println("*****************删除订单成功****************");
//此变量最为重要,遍历大部分输出语句,用来删除订单(各各数组不需要的元素)
na = na - 1;
System.out.println("输入0返回主菜单");
int scdg = sc.nextInt();
ip = false;
} else {
System.out.println("*****************输入错误,请重新输入****************");
}
}
}
//我要点赞
else if (lb == 5) {
boolean wydj = true;
while (wydj) {
int xh = 0;
System.out.println("****************我要点赞****************");
System.out.println("序号" + " " + "名称" + " " + "单价(元)" + " " + "点赞数");
for (int a = 0; a < cd.length; a++) {
xh = xh + 1;
System.out.println(xh + " " + cd[a] + " " + dj[a] + " " + dz[a]);
}
System.out.println("****************");
System.out.println("请输入需要点赞订单的序号");
int djxh = sc.nextInt();
//判断输入序号是否正确
if (djxh <= dz.length) {
//得到下标
int dddj = djxh - 1;
//增加点赞数组点赞数
dz[dddj] = dz[dddj] + 1;
System.out.println("*****************点赞成功****************");
System.out.println("输入0返回主菜单");
int scdg = sc.nextInt();
wydj = false;
} else {
System.out.println("*****************输入错误,请重新输入****************");
}
}
}
//退出系统
else if (lb == 6) {
i = false;
System.out.println("****************谢谢使用,欢迎下次光临****************");
//输入错误
} else {
System.out.println("****************输入错误,返回主菜单****************");
}
}
}
}
java基础简单的订餐系统
最新推荐文章于 2023-08-06 19:45:25 发布