概述
???? 棒棒有言:现在学习Java变得比以前容易多了,除了有大量的视频教程外,还有专业的机构,这都使学习变得更加简单化。如果仅仅学了些皮毛,高手写的程序你是望尘莫及的。在学习的过程中,书籍永远是知识不错的载体,所以要自己不断加大练习,这样才能不断提高自己。
???? 本章简介:Java接口是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为(功能)。
???? 作者:get棒棒本人主页要关注哦
???? 重要:这是一个项目是用数组写的还有一个是对象和数组一起写的
下面是代码
package com.qn.chihuolianmengtest;
import java.util.Scanner;
public class demo01 {
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];
// 一个餐品的信息(点菜信息)
String[] dishNames = { "红烧带鱼", "鱼香肉丝", "时令蔬菜" };
double[] prices = { 18.0, 38.0, 10.0 };
int[] praiseNums = new int[3];
// 首先初始化两条订单信息
names[0] = "赵先坡";
dishMegs[0] = "红烧带鱼 一份";
times[0] = 12;
addresses[0] = "故宫皇位";
states[0] = 0;
sumPrices[0] = 18.0;
names[1] = "阮班航";
dishMegs[1] = "鱼香肉丝 两份";
times[1] = 11;
addresses[1] = "美国总统府";
states[1] = 1;
sumPrices[1] = 76.0;
Scanner sc = 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("****************");
// 输入想要在主菜单做的事
int choose = sc.nextInt();
boolean isAdd = false;
switch (choose) {
case 1:
// 我要订餐
System.out.println("我要订餐");
for (int i = 0; i < names.length; i++) {
if (names[i] == null) {
isAdd = true;
System.out.println("序号t餐品名t单价t点赞数");
// 下面的for循环相当于菜单
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.println("请选择所选餐品序号:");
int chooseDish = sc.nextInt();
System.out.println("请选择餐品份数");
int number = sc.nextInt();
String dishMeg = dishNames[chooseDish - 1] + " "
+ number + "份";
// 请输入订餐人姓名
System.out.println("请输入订餐人姓名");
String name = sc.next();
// 请输入送餐时间
System.out.println("请输入送餐时间");
int time = sc.nextInt();
// 如果输入错误,请重新输入
while (time < 10 || time > 20) {
System.out.println("您输入错误,请您重新输入");
time = sc.nextInt();
}
// 输入送餐地址
System.out.println("请输入送餐地址");
String address = sc.next();
// 计算餐费
double sumPrice = prices[chooseDish - 1] * number;
// 送餐费,当餐费达到50元时,免六元餐费
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 + "元");
// 保存数据
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:
// 查看餐品信息
System.out.println("*********************");
System.out.println("序号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"+dishMegs[i]+"t"+time+"t"+addresses[i]+"t"+sumPrice+"t"+state);
}
}
break;
case 3:
// 签收订单
System.out.println("****************");
System.out.println("签收订单,请输入订单号");
int hao=sc.nextInt();
for (int i = 0; i < names.length; i++) {
if(names[i]!=null&&states[i]==1&&hao==i+1){
System.out.println("对不起,您的订单已经签收了");
break;
}else if(names[i]!=null&&states[i]==0&&hao==i+1){
System.out.println("您的订单还没有签收");
states[i]=1;
break;
}else if(names[i]==null){
System.out.println("您的订单没有找到");
break;
}
}
break;
case 4:
System.out.println("*********************");
System.out.println("删除订单");
System.out.println("输入一个要删除的订单号");
boolean del=false;
int shan=sc.nextInt();
int delIndex=-1;
for (int i = 0; i <names.length; i++) {
if(names[i]!=null&&states[i]==1&&shan==i+1){
delIndex=i;
del=true;
break;
}else if(names[i]!=null&&states[i]==0&&shan==i+1){
System.out.println("订单未签收,不能签收");
del=true;
break;
}
}
if(!del){
System.out.println("这个订单不存在");
break;
}
//找到了要删除的下标后继续执行操作
if(delIndex!=-1){
for(int i=delIndex+1;i<names.length;i++){
names[i-1]=names[i];
dishMegs[i-1]=dishMegs[i];
times[i-1]=times[i];
addresses[i-1]=addresses[i];
states[i-1]=states[i];
}
System.out.println("删除成功");
}
// 删除订单
break;
case 5:
System.out.println("***********************");
System.out.println("我要点赞");
//显示餐品列表
System.out.println("序号t餐品名t价格t点赞数");
for(int i=0;i<dishNames.length;i++){
String price=prices[i]+"元";
String praise=praiseNums[i]+"赞";
System.out.println((i+1)+"t"+dishNames[i]+"t"+price+"t"+praise);
}
System.out.println("请输入要点赞的菜品序号");
int zan=sc.nextInt();
praiseNums[zan-1]++;
System.out.println("点赞成功!");
System.out.println(dishNames[zan-1]+" "+praiseNums[zan-1]+"赞");
// 我要点赞
break;
case 6:
// 退出系统
break;
default:
break;
}
if (choose < 1 || choose > 6) {
break;
} else {
System.out.println("输入0返回");
num = sc.nextInt();
}
} while (num == 0);
System.out.println("谢谢使用,欢迎下次光临");
}
}
???? 棒棒有言:追逐梦想的过程就像是一个人在走一条黑暗、幽深而又漫长的隧道,多少次跌倒又爬起,经历了多少个暗无天日的黑夜与白天。一路上沉淀着难以计数的汗水与泪水,不断地自我暗示:只要自己坚持,只要勇敢地一向往前走,就必须能找到出口,必须会看到光明。然而,你并不确定,前方迎接你的会是怎样的艰难险阻,有没有危险的机关,你更加不知道自己要走多久。身边了解的人更是寥寥无几,很少有人能看懂你的执着和坚持,他们无法明白你朝思暮想的梦想所承载的好处,他们看不懂你心底的那幅画面,他们不明白你为什么放下安逸舒适不选,放着阳关大道不走,偏要走一条漫长崎岖看不到尽头的路,他们会觉得你疯狂、有病、自讨苦吃。
最后
以上就是缥缈店员为你收集整理的吃货联盟订餐系统(用数组写的)的全部内容,希望文章能够帮你解决吃货联盟订餐系统(用数组写的)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复