欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java實現(xiàn)外賣訂餐系統(tǒng)

 更新時間:2021年01月20日 08:54:24   作者:小蘇(º﹃º )  
這篇文章主要為大家詳細介紹了java實現(xiàn)外賣訂餐系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了java實現(xiàn)外賣訂餐系統(tǒng)的具體代碼,供大家參考,具體內(nèi)容如下

一、使用技術(shù)

javaSE

二、實現(xiàn)功能

外賣訂餐系統(tǒng)

具體要求如下:

使用選擇結(jié)構(gòu),循環(huán)結(jié)構(gòu),數(shù)組的知識實現(xiàn)一個外賣訂餐系統(tǒng)

三、運行效果圖

1.訂餐功能

2.查看餐袋

3.簽收訂單

4.刪除訂單

5.點贊

6.退出

分析圖片信息,可以看出我們需要創(chuàng)建一個菜單類,查看餐帶類和點贊菜單類

1.首先我們創(chuàng)建一個菜單類,用來定義菜單的屬性,使用到封裝,構(gòu)造方法,和toString方法。

public class Food {//菜單

 @Override
 public String toString() {
 return "Food{" +
 "num=" + num +
 ", name='" + name + '\'' +
 ", price=" + price +
 '}';
 }

 private int num;
 private String name;
 private double price;

 public Food() {
 }

 public Food(int num, String name, double price) {
 this.num = num;
 this.name = name;
 this.price = price;
 }

 public int getNum() {
 return num;
 }

 public void setNum(int num) {
 this.num = num;
 }

 public String getName() {
 return name;
 }

 public void setName(String name) {
 this.name = name;
 }

 public double getPrice() {
 return price;
 }

 public void setPrice(double price) {
 this.price = price;
 }
}

2.其次,我們在創(chuàng)建一個查看餐袋類

public class SeeFood {//查看餐帶
 private int num;//序號
 private String name;//訂餐人
 //private String information;//信息
 private String food;//菜品
 private int num1;//份數(shù)
 private int date;//送餐日期
 private String address;//送餐地址
 private double money;//金額
 private String state;//訂單狀態(tài)

 @Override
 public String toString() {
 return "SeeFood{" +
 "num=" + num +
 ", name='" + name + '\'' +
 ", food='" + food + '\'' +
 ", num1=" + num1 +
 ", date='" + date + '\'' +
 ", address='" + address + '\'' +
 ", money=" + money +
 ", state='" + state + '\'' +
 '}';
 }

 public int getNum() {
 return num;
 }

 public void setNum(int num) {
 this.num = num;
 }

 public String getName() {
 return name;
 }

 public void setName(String name) {
 this.name = name;
 }

 public String getFood() {
 return food;
 }

 public void setFood(String food) {
 this.food = food;
 }

 public int getNum1() {
 return num1;
 }

 public void setNum1(int num1) {
 this.num1 = num1;
 }

 public int getDate() {
 return date;
 }

 public void setDate(int date) {
 this.date = date;
 }

 public String getAddress() {
 return address;
 }

 public void setAddress(String address) {
 this.address = address;
 }

 public double getMoney() {
 return money;
 }

 public void setMoney(double money) {
 this.money = money;
 }

 public String getState() {
 return state;
 }

 public void setState(String state) {
 this.state = state;
 }

 public SeeFood() {
 }

 public SeeFood(int num, String name, String food,
 int num1, int date, String address,
 double money, String state) {
 this.num = num;
 this.name = name;
 this.food = food;
 this.num1 = num1;
 this.date = date;
 this.address = address;
 this.money = money;
 this.state = state;
 }
}

3.再創(chuàng)建一個點贊菜單類

public class FabulousFood {//點贊菜單
 private int num;//序號
 private String name;
 private double price;
 private int numfabulous;//點贊序號
 private String fabulous;

 @Override
 public String toString() {
 return "FabulousFood{" +
 "num=" + num +
 ", name='" + name + '\'' +
 ", price=" + price +" "+
 numfabulous +
 fabulous + '\'' +
 '}';
 }

 public FabulousFood() {
 }

 public FabulousFood(int num, String name, double price, int numfabulous, String fabulous) {
 this.num = num;
 this.name = name;
 this.price = price;
 this.numfabulous = numfabulous;
 this.fabulous = fabulous;
 }

 public int getNum() {
 return num;
 }

 public void setNum(int num) {
 this.num = num;
 }

 public String getName() {
 return name;
 }

 public void setName(String name) {
 this.name = name;
 }

 public double getPrice() {
 return price;
 }

 public void setPrice(double price) {
 this.price = price;
 }

 public int getNumfabulous() {
 return numfabulous;
 }

 public void setNumfabulous(int numfabulous) {
 this.numfabulous = numfabulous;
 }

 public String getFabulous() {
 return fabulous;
 }

 public void setFabulous(String fabulous) {
 this.fabulous = fabulous;
 }
}

4.創(chuàng)建點餐系統(tǒng)實現(xiàn)其功能,每個功能都使用方法來實現(xiàn)

import java.util.ArrayList;
import java.util.Iterator;
import java.util.Scanner;

public class OrderFood {//點餐
 static Scanner sc=new Scanner(System.in);
 static int date;//送餐時間
 static int number=0;//餐帶序號
 public static void main(String[] args) {
 ArrayList<Food> list = new ArrayList<>();
 list.add(new Food(1, "紅燒茄子", 24));
 list.add(new Food(2, "紅燒排骨", 36));
 list.add(new Food(3, "魚香肉絲", 32));
 ArrayList<FabulousFood> list2 = new ArrayList<>();
 list2.add(new FabulousFood(1, "紅燒茄子", 24,0,"贊"));
 list2.add(new FabulousFood(2, "紅燒排骨", 36,0,"贊"));
 list2.add(new FabulousFood(3, "魚香肉絲", 32,0,"贊"));
 ArrayList<SeeFood> list1 = new ArrayList<>();
 System.out.println(" 歡迎使用“外賣點餐系統(tǒng)”");
 System.out.println("*******************************");
 orderFood(list,list1,list2);
 }

 public static void orderFood(ArrayList<Food> list1,ArrayList<SeeFood> list2,ArrayList<FabulousFood> list3){//點餐系統(tǒng)界面
 // System.out.println(" 歡迎使用“外賣點餐系統(tǒng)”");
 //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、退出系統(tǒng)");
 System.out.println("*******************************");
 System.out.println("請選擇:");
 String num=sc.next();
 if (num.equals("1")){
 orderingFood(list1,list2,list3);
 }else if (num.equals("2")){
 seeFood(list1, list2,list3);
 }else if (num.equals("3")){
 signFor(list1, list2,list3);
 }else if (num.equals("4")){
 deletFood(list1,list2,list3);
 }else if (num.equals("5")){
 fabulousFood(list1,list2,list3);
 }else if (num.equals("6")){
 System.out.println("謝謝使用,歡迎下次光臨!");
 return;
 }else {
 System.out.println("輸出錯誤,請重新輸入!");
 orderFood(list1,list2,list3);
 }
 }

 public static void fabulousFood(ArrayList<Food> list,ArrayList<SeeFood> list2,ArrayList<FabulousFood> list3){//點贊
 System.out.println("******我要點贊******");
 System.out.println("序號 菜名 單價");
 Iterator<FabulousFood> it = list3.iterator();
 while (it.hasNext()){
 System.out.println(it.next());
 }
 System.out.println("請選擇您要點贊的菜品序號:");
 int num=sc.nextInt();
 for (int i = 0; i <list.size() ; i++) {
 if (num==list.get(i).getNum()){
 list3.get(i).setNumfabulous((list3.get(i).getNumfabulous()+1));
 }
 }
 System.out.println("點贊成功!");
 System.out.println("輸入0返回");
 int b=sc.nextInt();
 if (b==0){
 orderFood(list,list2,list3);
 }
 }

 public static void deletFood(ArrayList<Food> list,ArrayList<SeeFood> list2,ArrayList<FabulousFood> list3){//刪除訂單
 System.out.println("請輸入要刪除的訂單序號");
 int a=sc.nextInt();
 for (int i = 0; i <list2.size() ; i++) {
 if (a==list2.get(i).getNum()){
 list2.remove(list2.get(i));

 }
 }
 System.out.println("刪除訂單成功!");
 System.out.println("輸入0返回");
 int b=sc.nextInt();
 if (b==0){
 orderFood(list,list2,list3);
 }
 }

 public static void signFor(ArrayList<Food> list,ArrayList<SeeFood> list2,ArrayList<FabulousFood> list3){//簽收訂單
 System.out.println("請輸入要簽收的的訂單序號:");
 int sign=sc.nextInt();
 for (int i = 0; i <list.size() ; i++) {
 if (sign==(list.get(i).getNum())){
 list2.get(i).setState("已簽收");
 }
 }
 System.out.println("訂單簽收成功!");
 System.out.println("輸入0返回");
 int a=sc.nextInt();
 if (a==0){
 orderFood(list,list2,list3);
 }
 }

 public static void seeFood(ArrayList<Food> list,ArrayList<SeeFood> list2,ArrayList<FabulousFood> list3){//查看餐帶
 System.out.println("******查看餐帶******");
 System.out.println(" 序號 訂餐人 餐品信息 送餐日期 " +
 " 送餐地址 總金額 訂單狀態(tài)");
 Iterator<SeeFood> it = list2.iterator();
 while (it.hasNext()){
 System.out.println(it.next());
 }
 System.out.println("輸入0返回");
 int a=sc.nextInt();
 if (a==0){
 orderFood(list,list2,list3);
 }


 }
 public static void orderingFood(ArrayList<Food> list1,ArrayList<SeeFood> list2,ArrayList<FabulousFood> list3){//訂餐
 System.out.println("我要訂餐");
 System.out.println("請輸入訂餐人的姓名:");
 String name=sc.next();
 System.out.println("序號 菜名 單價");
 Iterator<Food> it = list1.iterator();
 while (it.hasNext()){
 System.out.println(it.next());
 }
 System.out.println("請輸入您要點的菜品編號");
 int num=sc.nextInt();
 System.out.println("請選擇您需要的份數(shù)");
 int num1=sc.nextInt();
 foodDelilvery();
 int num3=date;//送餐時間
 System.out.println("請輸入送餐地址");
 String address=sc.next();
 System.out.println("訂餐成功!");
 number++;//餐帶序號
 System.out.print("您訂的是:");
 String food=list1.get(num-1).getName();//菜品
 System.out.println(food+" "+num1+"份");
 System.out.println("送餐時間:"+date+"點");
 double money=list1.get(num-1).getPrice()*num1;//餐費
 System.out.println("餐費:"+money
 +"元,送餐費6.0元,總計:"+(money+6)+"元");
 //姓名,份數(shù),時間,地址,菜品,餐費
 list2.add(new SeeFood(number,name,food,num1,num3,address,(money+6),"已預(yù)定"));
 System.out.println("輸入0返回:");
 String input=sc.next();
 if (input.equals("0")){
 orderFood(list1,list2,list3);
 }else {
 System.out.println("歡迎下次光臨");
 }

 }

 static public void foodDelilvery(){//送餐時間
 System.out.println("請輸入送餐的時間(送餐時間是10點至20點間整點送餐):");
 int num2=sc.nextInt();
 date=num2;
 if (num2<10||num2>20){
 System.out.println("不在送餐時間!");
 foodDelilvery();
 }

 }
}

1.點餐功能

2.查看餐帶

3.簽收訂單

4.刪除訂單

5.我要點贊

6.退出系統(tǒng)

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Spring中@Transactional用法詳細介紹

    Spring中@Transactional用法詳細介紹

    這篇文章主要介紹了Spring中@Transactional用法詳細介紹的相關(guān)資料,需要的朋友可以參考下
    2017-02-02
  • SpringDataJPA在Entity中常用的注解介紹

    SpringDataJPA在Entity中常用的注解介紹

    這篇文章主要介紹了SpringDataJPA在Entity中常用的注解,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • Java并發(fā)工具之CyclicBarrier使用詳解

    Java并發(fā)工具之CyclicBarrier使用詳解

    這篇文章主要介紹了Java并發(fā)工具之CyclicBarrier使用詳解,CyclicBarrier是一個同步器,允許一組線程相互之間等待,直到到達某個公共屏障點(common barrier point),再繼續(xù)執(zhí)行,需要的朋友可以參考下
    2023-12-12
  • Spring Boot連接超時導(dǎo)致502錯誤的實戰(zhàn)案例

    Spring Boot連接超時導(dǎo)致502錯誤的實戰(zhàn)案例

    這篇文章主要給大家介紹了關(guān)于Spring Boot連接超時導(dǎo)致502錯誤的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • 解析SpringBoot項目開發(fā)之Gzip壓縮過程

    解析SpringBoot項目開發(fā)之Gzip壓縮過程

    這篇文章主要介紹了SpringBoot項目開發(fā)之Gzip壓縮過程,本文給大家分享幾種Gzip壓縮方式,通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-07-07
  • idea修改maven模塊名稱還顯示老名稱問題解決

    idea修改maven模塊名稱還顯示老名稱問題解決

    本文主要介紹了idea修改maven模塊名稱還顯示老名稱問題解決,文中通過圖文介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-11-11
  • Java生成二維碼的兩種實現(xiàn)方式(基于Spring?Boot)

    Java生成二維碼的兩種實現(xiàn)方式(基于Spring?Boot)

    這篇文章主要給大家介紹了關(guān)于Java生成二維碼的兩種實現(xiàn)方式,文中的代碼基于Spring?Boot,本文基于JAVA環(huán)境,以SpringBoot框架為基礎(chǔ)開發(fā),文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2023-07-07
  • Java static(靜態(tài)變量)和私有化功能與用法分析

    Java static(靜態(tài)變量)和私有化功能與用法分析

    這篇文章主要介紹了Java static(靜態(tài)變量)和私有化功能與用法,結(jié)合具體實例形式分析了Java static(靜態(tài)變量)和私有化的相關(guān)概念、原理、使用方法及操作注意事項,需要的朋友可以參考下
    2019-07-07
  • SpringBoot?使用定時任務(wù)(SpringTask)的詳細步驟

    SpringBoot?使用定時任務(wù)(SpringTask)的詳細步驟

    Cron?表達式非常靈活,可以滿足各種定時任務(wù)的需求,但需要注意的是,Cron?表達式只能表示固定的時間點,無法處理復(fù)雜的時間邏輯,本文給大家介紹SpringBoot?使用定時任務(wù)(SpringTask)的詳細步驟,感興趣的朋友一起看看吧
    2024-02-02
  • 如何避免Apache?Beanutils屬性copy

    如何避免Apache?Beanutils屬性copy

    這篇文章主要為大家介紹了如何避免Apache?Beanutils屬性copy的分析詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-01-01

最新評論