Java实现简单订餐系统

本文实例为大家分享了Java实现简单订餐系统的具体代码,供大家参考,具体内容如下

import java.util.Scanner;
import java.util.*;

public class OrderingMsg {

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]; // 总金额

//初始化2个订单信息
names[0] = "张晴";
dishMegs[0] = "红烧带鱼 2份";
times[0] = 12;
addresses[0] = "天成路207号";
sumPrices[0] = 76.0;
states[0] = 1;

names[1] = "张晴";
dishMegs[1] = "鱼香肉丝 2份";
times[1] = 18;
addresses[1] = "天成路207号";
sumPrices[1] = 20.0;

// 供选择的菜品信息
String[] dishNames = { "红烧带鱼", "鱼香肉丝", "时令鲜蔬" }; // 菜品名称
double[] prices = new double[] { 38.0, 20.0, 10.0 }; // 菜品单价
int[] praiseNums = new int[3];

Scanner input = new Scanner(System.in);
int num = -1; // 用户输入0返回主菜单,否则退出系统
boolean isExit = false; // 标志用户是否退出系统: true:退出系统

System.out.println("\n欢迎使用“吃货联盟订餐系统”");
// 循环:显示菜单,根据用户选择的数字执行相应功能
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("请选择:");
int choose = input.nextInt(); // 记录用户选择的功能编号
boolean isAdd = false; //记录是否可以订餐
boolean isSignFind = false; //找到要签收的订单
boolean isDelFind = false; //找到要删除的订单
// 根据用户选择的功能编号执行相应功能
switch (choose) {
case 1:
// 我要订餐
System.out.println("***我要订餐***");
System.out.print("请输入订餐人姓名:");
String name=input.next();
isAdd=true;
int j = 0;
for (; j < names.length; j++) {
                //todo
if(names[j]==null){

names[j]=name;
break;
}
else {
isAdd=true;
}
          }

if(!isAdd){
System.out.println("对不起,您的餐袋已满!");
}
else {
System.out.println("序号"+"\t"+"菜品名"+"\t"+"价格");
for(int i=0;i<dishNames.length;i++){
System.out.print(i+1+"\t"+dishNames[i]+"\t"+prices[i]+"\n");

}
System.out.print("请输入菜品编号:");
int dishNum=input.nextInt();
System.out.print("请输入菜品数量:");
int dishCnt=input.nextInt();
String dishMeg=dishNames[dishNum-1]+dishCnt+"份";
dishMegs[j]=dishMeg;
System.out.print("请输入收货地址:");
String Addr=input.next();
addresses[j]=Addr;
System.out.print("请输入收货时间:");
int time=input.nextInt();
times[j]=time;
double sumPrice=prices[dishNum-1]*dishCnt;
double deliCharge=(sumPrice>50)?0:5;
System.out.println("餐费:"+sumPrice+"元,送餐费:"+deliCharge+"元,总计:"+(sumPrice+deliCharge)+"元。");
sumPrices[j]=sumPrice+deliCharge;
}
break;
case 2:
// 查看餐袋
System.out.println("***查看餐袋***");
System.out.println("序号\t订餐人\t餐品信息\t\t送餐日期\t送餐地址\t\t总金额\t订单状态");
 //todo
for(int i=0;names[i]!=null;i++) {
String sta=(states[i]==1)?"已完成":"已预定";
System.out.print((i+1)+"\t"+names[i]+"\t"+dishMegs[i]+"\t"+times[i]+"\t"+addresses[i]+"\t"+sumPrices[i]+"\t"+sta+"\n");

}
break;
case 3:
// 签收定单
System.out.println("***签收定单***");

 //todo
System.out.println("序号\t订餐人\t餐品信息\t\t送餐日期\t送餐地址\t\t总金额\t订单状态");
for(int i=0;names[i]!=null;i++) {
String sta=(states[i]==1)?"已完成":"已预定";
System.out.print((i+1)+"\t"+names[i]+"\t"+dishMegs[i]+"\t"+times[i]+"\t"+addresses[i]+"\t"+sumPrices[i]+"\t"+sta+"\n");

}
System.out.print("请选择要签收的订单序号:");
int n=input.nextInt();
states[n-1]=1;
System.out.println("序号\t订餐人\t餐品信息\t\t送餐日期\t送餐地址\t\t总金额\t订单状态");
for(int i=0;names[i]!=null;i++) {
String sta=(states[i]==1)?"已完成":"已预定";
System.out.print((i+1)+"\t"+names[i]+"\t"+dishMegs[i]+"\t"+times[i]+"\t"+addresses[i]+"\t"+sumPrices[i]+"\t"+sta+"\n");

}
break;
case 4:
// 删除订单
System.out.println("***删除订单***");
System.out.println("序号\t订餐人\t餐品信息\t\t送餐日期\t送餐地址\t\t总金额\t订单状态");
for(int i=0;i<4;i++) {
String sta=(states[i]==1)?"已完成":"已预定";
System.out.print((i+1)+"\t"+names[i]+"\t"+dishMegs[i]+"\t"+times[i]+"\t"+addresses[i]+"\t"+sumPrices[i]+"\t"+sta+"\n");

}
System.out.print("请输入要删除的订单序号:");
 //todo
int m=input.nextInt();
for(int k=m; k<4;k++)
{
names[k-1]=names[k];
dishMegs[k-1]=dishMegs[k];
times[k-1]=times[k];
addresses[k-1]=addresses[k];
sumPrices[k-1]=sumPrices[k];
states[k-1]=states[k];
}
System.out.println("序号\t订餐人\t餐品信息\t\t送餐日期\t送餐地址\t\t总金额\t订单状态");
for(int i=0;i<4;i++) {
String sta=(states[i]==1)?"已完成":"已预定";
System.out.print((i+1)+"\t"+names[i]+"\t"+dishMegs[i]+"\t"+times[i]+"\t"+addresses[i]+"\t"+sumPrices[i]+"\t"+sta+"\n");

}
break;
case 5:
// 我要点赞
System.out.println("***我要点赞***");
// 显示菜品信息
System.out.println("序号" + "\t" + "菜名"+"\t"+"单价");
for(int i=0;i<dishNames.length;i++){
System.out.print(i+1+"\t"+dishNames[i]+"\t"+prices[i]+"\t"+praiseNums[i]+"赞"+"\n");
}
 //todo
System.out.print("请输入点赞序号:");
int number=input.nextInt();
praiseNums[number-1]=praiseNums[number-1]+1;
System.out.println("序号" + "\t" + "菜名"+"\t"+"单价");
for(int i=0;i<dishNames.length;i++){
System.out.print(i+1+"\t"+dishNames[i]+"\t"+prices[i]+"\t"+praiseNums[i]+"赞"+"\n");
}
break;
case 6:
// 退出系统
isExit = true;
break;
default:
//退出系统
isExit = true;
break;
}
if (!isExit) {
System.out.print("输入0返回:");
num = input.nextInt();
} else {
break;
}
} while (num == 0);
System.out.println("谢谢使用,欢迎下次光临!");
}
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • Java吃货联盟订餐系统代码实例

    本文实例为大家分享了Java订餐系统的具体代码,供大家参考,具体内容如下 package cn.practice1200; import java.util.Scanner; public class Eater_Alliance { /** * 吃货联盟订餐系统 * * @author QCD * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Scanner

  • java外卖订餐系统小项目

    本文实例为大家分享了java外卖订餐系统的具体代码,供大家参考,具体内容如下 执行结果: 通过选择功能序号,执行响应的功能: 代码实现: package 外卖订餐系统; /* * 代码优点,使用 循环: * 显示菜单, * 根据用户选择的数字执行相应功能(功能实现:do..while循环.) */ import java.util.Scanner; public class OrderingMsg { public static void main(String[] args) { //数据主题

  • Java实现简单订餐系统

    本文实例为大家分享了Java实现简单订餐系统的具体代码,供大家参考,具体内容如下 import java.util.Scanner; import java.util.*; public class OrderingMsg { public static void main(String[] args) { // 数据主体:一组订单信息 String[] names = new String[4]; // 订餐人名称 String[] dishMegs = new String[4]; // 所

  • java实现外卖订餐系统

    本文实例为大家分享了java实现外卖订餐系统的具体代码,供大家参考,具体内容如下 一.使用技术 javaSE 二.实现功能 外卖订餐系统 具体要求如下: 使用选择结构,循环结构,数组的知识实现一个外卖订餐系统 三.运行效果图 1.订餐功能 2.查看餐袋 3.签收订单 4.删除订单 5.点赞 6.退出 分析图片信息,可以看出我们需要创建一个菜单类,查看餐带类和点赞菜单类 1.首先我们创建一个菜单类,用来定义菜单的属性,使用到封装,构造方法,和toString方法. public class Foo

  • java实现简单快递系统

    本文实例为大家分享了java实现简单快递系统的具体代码,供大家参考,具体内容如下 创建四个类Express,Locker, User, Administrator分别模拟快递,快递柜,用户和管理员. import java.util.Random; import java.util.Scanner; /**  * @author hxf  * * @date 2020/12/12  */ public class Test {     static Scanner in = new Scanne

  • JAVA实现简单停车场系统代码

    JAVA项目中正号需要一个停车收费系统,就整理出来给大家分享一下,希望对大家有所帮助. <h1 accuse="qTitle" style="margin: 0px; padding: 0px; font-size: 16px; font-stretch: normal; line-height: 26px; font-family: "PingFang SC", "Lantinghei SC", "Microsoft

  • 详解使用SSM实现简单工作流系统之实现篇

    项目说明 本项目是依据<轻量级 Java EE 企业应用实战 第4版>的最后一章中的项目实现的,原本项目使用的框架是Struts2 + Spring 4 + Hibernate,因为本人在学习Spring MVC + Spring + Mybatis,所以将它重写了一次,使用了Spring MVC + Spring + Mybatis项目.在正文中介绍项目的时候,也将主要依据原书的叙述. 因为项目是根据原始项目实现的,实现过程中可能出现有Bug,如果发现问题可以与我联系,或在评论区中留言评论.

  • Java实现简单点餐系统

    用Java实现简单点餐系统,供大家参考,具体内容如下 程序控制分析: 1.欢迎页循环:do-while2.Scanner 控制输入3.选择页循环:switch-case 要求: 订单信息:String 二维数组序号.姓名.餐品名称.份数.价格.总价.地址.时间(10-20).状态(已预定.已完成).热度(int型) 签收订单:改变订单状态,已预定可以签收,如果已经完成则不能再次签收. 删除订单:不能删除未完成订单,序号要随之改变. 我要点赞:对相应的餐品点赞,并展示. package Pract

  • 一个简单的java学生寝室查询系统

    本文实例为大家分享了java学生寝室查询系统的具体代码,供大家参考,具体内容如下 前端部分: index.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>AHPU Freshman dormitory inquiry</title> <script src="confirm.js

  • Java实现简单汽车租赁系统

    本文实例为大家分享了Java实现简单汽车租赁系统的具体代码,供大家参考,具体内容如下 需求如下:  问题分析: 首先应当构建一个MotoVehicle的抽象(abstract)类,类里面包含一个brand属性,表示汽车品牌:还包含一个no属性,表示汽车牌号: package cn.jbit.car; public abstract class MotoVehicle { private String no; private String brand; /** * 无参构造方法 */ public

随机推荐