简单java基础小项目
现开发一个网上订餐系统,功能如下
我要订餐
查看餐袋
签收订单
删除订单
我要点赞
退出系统
程序基本概念
变量
数据类型
流程控制
顺序
选择
循环
跳转语句
数组
import java.util.Scanner;
/**
* @author zhouhu
* @Date
* @Desription
*/
public class D1 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
String[] dishes={"超级烧肉","开水白菜","为福跳墙","蜜汁熊掌"};
double[] price={18,12,68,88};
int[] h={50,100,20,12};
String[][] order=new String[1024][];
// int[]zan=new int[dishes.length];
int chose=0;
//欢迎页
System.out.println("欢迎使用吃货联盟订餐系统");
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("请选择");
chose=sc.nextInt();
switch (chose){
case 1:
System.out.println("*****我要订餐******");
System.out.print("请输入订单人姓名");
String name=sc.next();
//餐单信息
System.out.println("序号\t"+"菜品\t"+"单价\t");
for (int i = 0; i < dishes.length; i++) {
System.out.println((i+1)+dishes[i]+"\t"+price[i]+"元");
}
int disNum=0;
do {System.out.print("菜品编号");
disNum=sc.nextInt();
if (disNum<1||disNum>dishes.length){
System.out.println("请重新输入!");
}
}while(disNum<1||disNum>dishes.length);
int pcs=0;
do {System.out.println("需要的份数");
pcs=sc.nextInt();
if (pcs<1){
System.out.println("请重新输入!");
}
}while(pcs<1);
int time=0;
do {
System.out.println("输入送餐时间");
time=sc.nextInt();
if (time<10||time>20){
System.out.println("重新输入");
}
}while (time<10||time>20);
System.out.println("输入地址");
String address=sc.next();
System.out.println("订餐成功");
System.out.print("您定的是"+dishes[disNum-1]+"\t"+pcs+"份");
System.out.println("时间"+time);
double cost=price[disNum-1]*pcs;
double sent=cost<50? 6:0;
double total=cost+sent;
System.out.println("总价格为"+total+" 餐费 "+cost+" 运送费 "+sent);
for (int i = 0; i < order.length ; i++) {
if (order[i]==null){
order[i]=new String[2];
order[i][0]=name+"\t"+dishes[disNum-1]+"\t"+pcs+"份\t"+time+"点\t"+address+"\t";
order[i][1]="已预订";
break;
}
}
break;
case 2:
System.out.println("******查看餐带******");
System.out.println("序号\t订餐人\t餐品信息\t\t送餐日期\t送餐地址\t\t总金额\t订单状态");
for (int i = 0; i <order.length ; i++) {
if (order[i]!=null){
System.out.println((i+1)+"\t"+order[i][0]+order[i][1]);
}else{
break;
}
}
break;
case 3:
System.out.println("******签收订单******");
System.out.println("序号\t订餐人\t餐品信息\t\t送餐日期\t送餐地址\t\t总金额\t订单状态");
for (int i = 0; i <order.length ; i++) {
if (order[i]!=null){
System.out.println((i+1)+"\t"+order[i][0]+order[i][1]);
}else{
break;
}
}
int num=0 ;
int end = 0;
do {
System.out.println("选择要签收的单号");
for (int i = 0; i < order.length; i++) {
if (order[i] == null) {
end = i;
break;
}
}
num=sc.nextInt();
if (num<1||num>end){
System.out.println("重新输入");
}else if ("已完成".equals(order[num-1][1])){
System.out.println("已签收,不能重复签收");
}else {
order[num-1][1] = "已完成";
break;
}
} while (num<1||num>end||"已预订".equals(order[num-1][1])) ;
break;
case 4:
System.out.println("******删除订单******");
int n=0;
int e=0;
do {
for (int i = 0; i <order.length ; i++) {
if (order[i]==null){
e=i;
break;
}
}
System.out.println("输入删除序号");
n=sc.nextInt();
if (n<1||n>e){
System.out.println("重新输入");
}else if ("已预定".equals(order[n-1][1])){
System.out.println("未完成不能删除");
}else {
boolean isdelete=false;
for (int i = n-1; i <order.length ; i++) {
if (i==order.length-1){
isdelete=true;
order[i]=null;
}else{
order[i]=order[i+1];
if (order[i]==null){
break;
}
}
}
}
}while(n<1||n>e||!"已完成".equals(order[n-1][1]));
break;
case 5:
System.out.println("*****我要点赞*****");
System.out.println("序号\t"+"菜品\t"+"单价\t");
for (int i = 0; i < dishes.length; i++) {
System.out.println((i+1)+dishes[i]+"\t"+price[i]+"元"+h[i]+"赞");
}
System.out.print("请选择您要点赞的菜品序号:");
int zan=sc.nextInt();
h[zan-1]++;
break;
case 6:
System.out.println("*****退出系统*****");
break;
default:
}
if (chose>0&chose<6){
System.out.println("输入0返回");
chose=sc.nextInt();
}else
break;
}while(chose==0);
System.out.println("谢谢使用,欢迎下次光临");
}
}