首頁>技術>
傻瓜式外賣點餐系統(無資料庫)

tips:

菜品類(菜品id,菜品名,菜品型別,上架時間,單價,月銷售,總數量)管理員類(管理員id,賬號,密碼)客戶類(客戶id,客戶名,性別,密碼,送餐地址,手機號,建立時間)訂單類(訂單號,訂單建立時間,菜品id,購買數,客戶id,總價格,訂單狀態)說明:菜品型別可自行設計資料型別(int或String),如1:麵食 2:米飯 3:湘菜 …菜品上架時間、客戶建立時間、訂單建立時間根據新增時間自動分配系統時間訂單狀態型別為int(0:未支付 1:已支付 2:配送中 3:已完成)要求實現如下功能:實現不同角色使用者登入系統(1) 管理員登入系統看到如下選單:① 新增菜品② 檢視所有菜品資訊(包含分頁功能)③ 檢視指定類別的菜品資訊④ 根據菜品id修改菜品價格⑤ 刪除指定id的菜品⑥ 新增客戶⑦ 檢視客戶列表⑧ 刪除指定id的客戶⑨ 訂單列表顯示⑩ 根據訂單id修改訂單狀態11 退出(2) 客戶登入看到如下選單:① 顯示所有菜品(按菜品銷量從高到低排序輸出)-------->點餐(輸入菜品id和購買數量)② 根據菜品類別顯示所有菜品③ 檢視所有訂單(當前登入使用者的)④ 修改密碼(當前登入使用者的)⑤ 個人資訊顯示

以上就是全部要求,首先咱們可以先建一個介面,方便對四個管理類進行操作;

package com.softeem.lesson23.test2;import java.util.List;public interface DAO<T> {  void insert(T t);  T findById(String id);  List<T> findAll();  void delete(String id);}

一、再根據要求,先把四個類的屬性類建立起來:

1. Admin類(管理員類)

package com.softeem.lesson23.test2;public class Admin {  private String aID;  private String account;  private String apwd;  public Admin() {    // TODO Auto-generated constructor stub  }  public Admin(String aID, String account, String apwd) {    super();    this.aID = aID;    this.account = account;    this.apwd = apwd;  }  public String getaID() {    return aID;  }  public void setaID(String aID) {    this.aID = aID;  }  public String getAccount() {    return account;  }  public void setAccount(String account) {    this.account = account;  }  public String getApwd() {    return apwd;  }  public void setApwd(String apwd) {    this.apwd = apwd;  }  @Override  public String toString() {    return "Admin [aID=" + aID + ", account=" + account + ", apwd=" + apwd + "]";  }  }

2. Dishes類(菜品類)

package com.softeem.lesson23.test2;import java.time.LocalDate;public class Dishes {  private String dID;  private String dname;  private String dtype;  private LocalDate dtime;  private double price;  private int dsales;  private int dstocks;  public Dishes() {    // TODO Auto-generated constructor stub  }  public Dishes(String dID, String dname, String dtype, LocalDate dtime, double price, int dsales, int dstocks) {    super();    this.dID = dID;    this.dname = dname;    this.dtype = dtype;    this.dtime = dtime;    this.price = price;    this.dsales = dsales;    this.dstocks = dstocks;  }  public String getdID() {    return dID;  }  public void setdID(String dID) {    this.dID = dID;  }  public String getDname() {    return dname;  }  public void setDname(String dname) {    this.dname = dname;  }  public String getDtype() {    return dtype;  }  public void setDtype(String dtype) {    this.dtype = dtype;  }  public LocalDate getDtime() {    return dtime;  }  public void setDtime(LocalDate dtime) {    this.dtime = dtime;  }  public double getPrice() {    return price;  }  public void setPrice(double price) {    this.price = price;  }  public int getDsales() {    return dsales;  }  public void setDsales(int dsales) {    this.dsales = dsales;  }  public int getDstocks() {    return dstocks;  }  public void setDstocks(int dstocks) {    this.dstocks = dstocks;  }  @Override  public String toString() {    return "Dishes [菜品id:" + dID + ", 菜品名:" + dname + ", 菜品型別:" + dtype + ", 上架時間:" + dtime + ", 單價:" + price        + ", 月銷量:" + dsales + ", 總數量:" + dstocks + "]";  }}

3. Order類(訂單類)

package com.softeem.lesson23.test2;import java.time.LocalDateTime;public class Order {  private String OrderID;  private LocalDateTime utime;  private Dishes dishes;  private int Ordernum;  private String uID;  private Double Orderprice;  private int OrderValue;  public Order() {    // TODO Auto-generated constructor stub  }  public Order(String orderID, LocalDateTime utime, Dishes dishes, int ordernum, String uID, Double orderprice,      int orderValue) {    super();    OrderID = orderID;    this.utime = utime;    this.dishes = dishes;    Ordernum = ordernum;    this.uID = uID;    Orderprice = orderprice;    OrderValue = orderValue;  }  public String getOrderID() {    return OrderID;  }  public void setOrderID(String orderID) {    OrderID = orderID;  }  public LocalDateTime getUtime() {    return utime;  }  public void setUtime(LocalDateTime utime) {    this.utime = utime;  }  public Double getOrderprice() {    return Orderprice;  }  public void setOrderprice(Double orderprice) {    Orderprice = orderprice;  }  public Dishes getDishes() {    return dishes;  }  public void setDishes(Dishes dishes) {    this.dishes = dishes;  }  public int getOrdernum() {    return Ordernum;  }  public void setOrdernum(int ordernum) {    Ordernum = ordernum;  }  public String getuID() {    return uID;  }  public void setuID(String uID) {    this.uID = uID;  }  public int getOrderValue() {    return OrderValue;  }  public void setOrderValue(int orderValue) {    OrderValue = orderValue;  }  @Override  public String toString() {    return "Order [OrderID=" + OrderID + ", utime=" + utime + ", dishes=" + dishes + ", Ordernum=" + Ordernum        + ", uID=" + uID + ", Orderprice=" + Orderprice + ", OrderValue=" + OrderValue + "]";  }}

4. User類(使用者類)

package com.softeem.lesson23.test2;import java.time.LocalDateTime;public class User {  private String uID;  private String uname;  private String usex;  private String upwd;  private String uadress;  private String utel;  private LocalDateTime utime;  public User() {    // TODO Auto-generated constructor stub  }  public User(String uID, String uname, String usex, String upwd, String uadress, String utel, LocalDateTime utime) {    super();    this.uID = uID;    this.uname = uname;    this.usex = usex;    this.upwd = upwd;    this.uadress = uadress;    this.utel = utel;    this.utime = utime;  }  public String getuID() {    return uID;  }  public void setuID(String uID) {    this.uID = uID;  }  public String getUname() {    return uname;  }  public void setUname(String uname) {    this.uname = uname;  }  public String getUsex() {    return usex;  }  public void setUsex(String usex) {    this.usex = usex;  }  public String getUpwd() {    return upwd;  }  public void setUpwd(String upwd) {    this.upwd = upwd;  }  public String getUadress() {    return uadress;  }  public void setUadress(String uadress) {    this.uadress = uadress;  }  public String getUtel() {    return utel;  }  public void setUtel(String utel) {    this.utel = utel;  }  public LocalDateTime getUtime() {    return utime;  }  public void setUtime(LocalDateTime utime) {    this.utime = utime;  }  @Override  public String toString() {    return "User [uID=" + uID + ", uname=" + uname + ", usex=" + usex + ", upwd=" + upwd + ", uadress=" + uadress        + ", utel=" + utel + ", utime=" + utime + "]";  }}

這一步沒什麼難度,直接把每一個屬性都設定一下,然後設定為私有,注意屬性的資料型別,這個很重要,方便後期管理類對其進行操作。

二、屬性管理類

這個是整個demo比較難得地方,我的想法是建立Admin屬性管理類,Order屬性管理類,Dishes屬性類,User屬性管理類,再在Admin屬性管理類裡把Order屬性管理類,Dishes屬性類,User屬性管理類先new出來,然後,每個屬性管理類實現各自的方法,只需要在Admin屬性管理類中呼叫各個屬性管理類的方法,就可以實現透過Admin類管理其他類的資料,但是,每個類需要建一個Map集合,儲存各自的元素,此處應該注意每個屬性管理類Map的鍵方便後期對Map進行操作,然後建立選單類,規定User和Admin能呼叫的方法。

話不多說,直接上程式碼,一下程式碼是透過Admin管理類延伸的,所以先看Admin管理類。

1. Admin管理類

package com.softeem.lesson23.test2;import java.time.LocalDate;import java.time.LocalDateTime;//import java.util.ArrayList;import java.util.Collections;import java.util.HashMap;import java.util.List;import java.util.Map;import java.util.Scanner;//import java.util.Set;public class AdminSys implements DAO<Admin> {  static Map<String, Admin> map = new HashMap<>();//  static Set<String> keys = map.keySet();  UserSys u = new UserSys();  OrderSys o = new OrderSys();  DishesSys d = new DishesSys();  Scanner sc = new Scanner(System.in);  /**   * 新增菜品   */  public void addDishes() {    System.out.println("請輸入您要新增的菜品:(按照:菜品ID/菜品名/菜品型別/單價/月銷量/總數量)");    String str = sc.next();    String[] info = str.split("/");    //    if (info.length < 6) {      System.out.println("天啦擼,輸入失敗啦,請重新輸入!");      addDishes();    } else {      LocalDate dtime = LocalDate.now();      Dishes t = new Dishes(info[0], info[1], info[2], dtime, Double.parseDouble(info[3]),          Integer.parseInt(info[4]), Integer.parseInt(info[5]));      d.insert(t);      System.out.println("小主,恭喜你!新增成功了");    }  }  /**   * 檢視所有菜品資訊(包含分頁功能)   */  public void showAllDishes(int pageSize) {    List<Dishes> list = d.findAll();    int start = 0;    //先寫一個死迴圈,進入else後break掉    while (true) {      if (list.size() > (pageSize + start)) {        System.out.println(list.subList(start, pageSize + start));      } else {        System.out.println(list.subList(start, list.size()));        break;      }      start = start + pageSize;    }  }  /**   * 檢視指定類別的菜品資訊   *    */  public void selecBytypeOfAdmin() {    System.out.println("請輸入您要查詢菜品的類別:");    String typename = sc.next();    d.selectBytype(typename);  }  /**   * 根據菜品id修改菜品價格   */  public void selectByDishesID() {    System.out.println("請輸入您要查詢的菜品id:");    String id = sc.next();    Dishes dish = d.findById(id);    if (dish == null) {      System.out.println("沒有當前id的菜品呢");    } else {      System.out.println("當前菜品為:" + dish);      System.out.println("請輸入新的菜品單價:");      double newprice = sc.nextDouble();      Dishes t = new Dishes(dish.getdID(), dish.getDname(), dish.getDtype(), dish.getDtime(), newprice,          dish.getDsales(), dish.getDstocks());      d.insert(t);      System.out.println("修改成功" + d.findById(t.getdID()));    }  }  /**   * 刪除指定id的菜品   *    * @param args   */  public void deleteDishes() {    System.out.println("請輸入您要刪除的菜品id");    String id = sc.next();    d.delete(id);    System.out.println("刪除成功!!");  }  /**   * 新增客戶   */  public void addUser() {    System.out.println("請輸入您要新增的使用者:按照(id/姓名/性別/密碼/送餐地址/手機號)");    String str = sc.next();    String[] info = str.split("/");    if (info.length < 6) {      System.out.println("您輸入的資訊有誤,請重新輸入....");      addUser();    } else {      LocalDateTime utime = LocalDateTime.now();      u.insert(new User(info[0], info[1], info[2], info[3], info[4], info[5], utime));      System.out.println("新增成功");    }  }  /**   * 檢視客戶列表   */  public void findUser() {    List<User> userlist = u.findAll();    for (User user : userlist) {      System.out.println(user);    }  }  /**   * 根據id查詢指定使用者   */  public User findUserByid(String id) {    return u.findById(id);  }  /**   * 刪除指定id的客戶   */  public void deleteUserByAdmin() {    System.out.println("請輸入您要刪除的id:");    String id = sc.next();    u.delete(id);  }  /**   * 訂單列表顯示   */  public void showAllOrder() {    List<Order> allOrder = o.findAll();    for (Order order : allOrder) {      System.out.println(order);    }  }  /**   * 根據訂單id修改訂單狀態   */  public void changeOrderValue() {    System.out.println("請輸入您要修改狀態的訂單id");    String id = sc.next();    Order order = o.findById(id);    if (order == null) {      System.out.println("沒有當前id的訂單,請檢查輸入");    } else {      System.out.println("已找到當前id訂單" + order);      System.out.println("請輸入您要修改的狀態:0:未支付 1:已支付 2:配送中 3:已完成");      int value = sc.nextInt();      Order t = new Order(order.getOrderID(), order.getUtime(), order.getDishes(), order.getOrdernum(),          order.getuID(), order.getOrderprice(), value);      o.insert(t);      System.out.println("修改成功了!!!");    }  }  /**   * 顯示所有菜品(按菜品銷量從高到低排序輸出)   */  public void showAllDishesByUser() {    List<Dishes> list = d.findAll();    Collections.sort(list, (p1, p2) -> p1.getDsales() - p2.getDsales());    System.out.println(list);  }  /**   * 點餐(輸入菜品id和購買數量)   */  public void shopDishes(User user) {    showAllDishesByUser();    System.out.println("請輸入您要購買的id和數量:按照(id/數量)");    String str = sc.next();    String[] info = str.split("/");    // 判斷輸入是否符合要求,不符合則要求重新輸入    if (info.length < 2) {      System.out.println("輸入有誤,請重新輸入:");      shopDishes(user);    } else {      LocalDateTime l = LocalDateTime.now();      // String orderID, LocalDateTime utime, Dishes dishes, int ordernum, String uID,      // Double orderprice,int orderValue      Order t = new Order(info[0], l, d.findById(info[0]), Integer.parseInt(info[1]), user.getuID(),          o.findById(info[0]).getOrderprice(), o.findById(info[0]).getOrderValue());      o.insert(t);      System.out.println("訂單已生成!!!" + o.findById(info[0]));    }  }  /**   * 根據菜品類別顯示所有菜品   */  public void ShowOfTypeByUser() {    System.out.println("請輸入您要查詢的類別:");    String str = sc.next();    System.out.println(d.findByType(str));  }  /**   * 檢視所有訂單(當前登入使用者的)   */  public void showAllOrderByUser(User user) {    List<Order> list = o.findByuId(user.getuID());    for (Order order : list) {      System.out.println(order);    }  }  /**   * 修改密碼(當前登入使用者的)   */  public void changePwdByUser(User user) {    u.changepwd(user.getuID());    System.out.println("修改成功!!");  }  /**   * 個人資訊顯示   */  public void showByUser(User user) {    User findById = u.findById(user.getuID());    System.out.println(findById);  }   //待補充功能,刪除管理員  @Override  public void delete(String id) {  }  //待補充功能,新增管理員  @Override  public void insert(Admin t) {    // TODO Auto-generated method stub  }  //待補充功能,透過id即賬號查詢管理員  @Override  public Admin findById(String id) {    return map.get(id);  }  //待補充功能,顯示所有管理員  @Override  public List<Admin> findAll() {    // TODO Auto-generated method stub    return null;  }     //先設定系統預設資料  public void addMessage() {    map.put("qwl", new Admin("10086", "qwl", "123456"));    LocalDate time = LocalDate.now();    Dishes d1 = new Dishes("1", "紅燒豬蹄", "肉類", time, 12.5, 20, 30);    d.insert(d1);    Dishes d2 = new Dishes("2", "雞公煲", "肉類", time, 21.5, 30, 20);    d.insert(d2);    Dishes d3 = new Dishes("3", "麻辣香鍋", "火鍋類", time, 30, 5, 10);    d.insert(d3);    Dishes d4 = new Dishes("4", "水煮肉片", "肉類", time, 15, 12, 15);    d.insert(d4);    Dishes d5 = new Dishes("5", "水果沙拉", "水果類", time, 6, 70, 60);    d.insert(d5);    // String orderID, LocalDateTime utime, Dishes dishes, int ordernum, String uID,    // Double orderprice,int orderValue    LocalDateTime localdatetime = LocalDateTime.now();    Order o1 = new Order("1", localdatetime, d1, 10, "1001", 60.0, 1);    o.insert(o1);    Order o2 = new Order("2", localdatetime, d2, 5, "1002", 50.0, 10);    o.insert(o2);    Order o3 = new Order("3", localdatetime, d3, 5, "1003", 40.0, 5);    o.insert(o3);    Order o4 = new Order("4", localdatetime, d4, 5, "1004", 30.0, 6);    o.insert(o4);    Order o5 = new Order("5", localdatetime, d5, 5, "1005", 20.0, 8);    o.insert(o5);    // String uID, String uname, String usex, String upwd, String uadress, String    // utel, LocalDateTime utime    User u1 = new User("1001", "張三", "男", "123456", "湖北", "13545286487", localdatetime);    u.insert(u1);    User u2 = new User("1002", "李四", "男", "234567", "湖南", "15927948976", localdatetime);    u.insert(u2);    User u3 = new User("1003", "王五", "男", "345678", "江蘇", "15927986854", localdatetime);    u.insert(u3);    User u4 = new User("1004", "劉柳", "女", "456789", "浙江", "18771580860", localdatetime);    u.insert(u4);    User u5 = new User("1005", "趙琦", "女", "567890", "新疆", "18771580750", localdatetime);    u.insert(u5);  }}

2. Order屬性管理類

package com.softeem.lesson23.test2;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;import java.util.Objects;import java.util.Set;public class OrderSys implements DAO<Order> {  static Map<String, Order> ordermap = new HashMap<>();  static List<Order> orderlist = new ArrayList<>();  /**   * 新增訂單   */  @Override  public void insert(Order t) {    ordermap.put(t.getOrderID(), t);  }  /**   * 透過訂單id查詢訂單   */  @Override  public Order findById(String id) {    if (ordermap.get(id) == null) {      return null;    } else {      return ordermap.get(id);    }  }  /**   * 透過使用者id查詢使用者的所有訂單,並返回一個list集合   * @param uid   * @return   */  public List<Order> findByuId(String uid) {    List<Order> list = new ArrayList<>();    Set<String> keys = ordermap.keySet();    for (String key : keys) {      if (Objects.equals(uid, ordermap.get(key).getuID())) {        list.add(ordermap.get(key));      }    }    return list;  }  /**   * 顯示所有訂單   */  @Override  public List<Order> findAll() {    Set<String> keys = ordermap.keySet();    for (String key : keys) {      orderlist.add(ordermap.get(key));    }    return orderlist;  }  /**   * 待完成功能,刪除訂單   */  @Override  public void delete(String id) {    // TODO Auto-generated method stub  }}

3. User屬性管理類

package com.softeem.lesson23.test2;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;import java.util.Scanner;import java.util.Set;//客戶id,客戶名,性別,密碼,送餐地址,手機號,建立時間public class UserSys implements DAO<User> {  static Map<String, User> usermap = new HashMap<>();  List<User> list = new ArrayList<>();  Scanner sc = new Scanner(System.in);  /**   * 新增客戶   */  @Override  public void insert(User t) {    usermap.put(t.getuID(), t);  }  /**   * 檢視客戶列表   */  @Override  public List<User> findAll() {    Set<String> keys = usermap.keySet();    for (String str : keys) {      list.add(usermap.get(str));    }    return list;  }  /**   * 刪除指定id的客戶   */  @Override  public void delete(String id) {    if (usermap.get(id) == null) {      System.out.println("沒有當前id的客戶");    } else {      System.out.println(usermap.get(id) + "已刪除!!!");      usermap.remove(id);    }  }  /**   * 修改密碼(當前登入使用者的)   */  public void changepwd(String id) {    User user = findById(id);    System.out.println("請輸入新密碼:");    String str = sc.next();    User t = new User(user.getuID(), user.getUname(), user.getUsex(), str, user.getUadress(), user.getUtel(),        user.getUtime());    usermap.put(id, t);  }  /**   * 透過id查詢對應客戶   */  @Override  public User findById(String id) {    if (usermap.get(id) == null) {      return null;    } else {      return usermap.get(id);    }  }}

4. Dishes屬性管理類

package com.softeem.lesson23.test2;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;import java.util.Objects;import java.util.Set;public class DishesSys implements DAO<Dishes> {  // 建立一個菜品的map集合,其中菜品的id為map的鍵,整個菜品物件為map的值  static Map<String, Dishes> dishesmap = new HashMap<>();  Set<String> keys = dishesmap.keySet();  /**   * 新增菜品   */  @Override  public void insert(Dishes t) {    dishesmap.put(t.getdID(), t);  }  /**   * 透過id來尋找菜品   */  @Override  public Dishes findById(String id) {    if (dishesmap.get(id) == null) {      return null;    } else {      return dishesmap.get(id);    }  }  /**   * 根據菜品型別查詢菜品   */  public List<Dishes> findByType(String type) {    List<Dishes> list = new ArrayList<>();    for (String key : keys) {      if (Objects.equals(type, dishesmap.get(key).getDtype())) {        list.add(dishesmap.get(key));      }    }    return list;  }  /**   * 查詢所有菜品   */  @Override  public List<Dishes> findAll() {    List<Dishes> list = new ArrayList<>();    for (String str : keys) {      list.add(dishesmap.get(str));    }    return list;  }  public void selectBytype(String typename) {    int count = 0;    for (String key : keys) {      if (Objects.equals(dishesmap.get(key).getDtype(), typename)) {        System.out.println(dishesmap.get(key));        count++;      }    }    if (count == 0) {      System.out.println("沒有當前類別的菜品!");    }  }  /**   * 刪除指定id菜品   */  @Override  public void delete(String id) {    if (dishesmap.get(id) == null) {      System.out.println("輸入id錯誤...");    } else {      dishesmap.remove(id);    }  }}

以上基本就是程式碼的核心部分,剩下的部分就簡化很多了,建立一個選單類,分別對其進行不同調用就行了

三、選單類

package com.softeem.lesson23.test2;import java.util.Objects;import java.util.Scanner;public class Menu {  static AdminSys admin = new AdminSys();  Scanner sc = new Scanner(System.in);  public void showMenu() {    admin.addMessage();    System.out.println("請輸入賬號和密碼:按照(賬號/密碼)");    String str = sc.next();    String[] info = str.split("/");    if (info.length < 2) {      System.out.println("輸入有誤,請重新輸入:");      showMenu();    } else {      if (admin.findById(info[0]) != null && Objects.equals(admin.findById(info[0]).getApwd(), info[1])) {        adminMenu();      } else if (admin.findUserByid(info[0]) != null          && Objects.equals(info[1], admin.findUserByid(info[0]).getUpwd())) {        User user = admin.findUserByid(info[0]);        userMenu(user);      } else {        System.out.println("輸入有誤,請重新輸入....");        showMenu();      }    }  }  public void userMenu(User user) {    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("請輸入您要進行的操作:");    String n = sc.next();    switch (n) {    case "1":      admin.shopDishes(user);      userMenu(user);      break;    case "2":      admin.ShowOfTypeByUser();      userMenu(user);      break;    case "3":      admin.showAllOrderByUser(user);      userMenu(user);      break;    case "4":      admin.changePwdByUser(user);      userMenu(user);      break;    case "5":      admin.showByUser(user);      userMenu(user);      break;    case "6":      System.out.println("謝謝使用,再見!");      System.exit(0);    default:      System.out.println("輸入錯誤,請重新輸入:");      userMenu(user);    }  }  public void adminMenu() {    System.out.println("=========歡迎您尊貴的管理員=======");    System.out.println("====【1】新增菜品===============");    System.out.println("====【2】檢視所有菜品資訊顯示=======");    System.out.println("====【3】檢視指定類別的菜品資訊=====");    System.out.println("====【4】根據菜品id修改菜品價格=====");    System.out.println("====【5】刪除指定id的菜品=========");    System.out.println("====【6】新增客戶================");    System.out.println("====【7】檢視客戶列表=============");    System.out.println("====【8】刪除指定id的使用者==========");    System.out.println("====【9】訂單列表顯示=============");    System.out.println("====【10】根據訂單id修改訂單狀態====");    System.out.println("====【11】退出=================");    String m = sc.next();    switch (m) {    case "1":      admin.addDishes();      adminMenu();      break;    case "2":      System.out.println("請輸入您需要每行顯示多少資料:");      int pageSize = sc.nextInt();      admin.showAllDishes(pageSize);      adminMenu();      break;    case "3":      admin.selecBytypeOfAdmin();      adminMenu();      break;    case "4":      admin.selectByDishesID();      adminMenu();      break;    case "5":      admin.deleteDishes();      adminMenu();      break;    case "6":      admin.addUser();      adminMenu();      break;    case "7":      admin.findUser();      adminMenu();      break;    case "8":      admin.deleteUserByAdmin();      adminMenu();      break;    case "9":      admin.showAllOrder();      adminMenu();      break;    case "10":      admin.changeOrderValue();      adminMenu();      break;    case "11":      System.out.println("謝謝使用,再見!");      System.exit(0);      break;    default:      System.out.println("輸入錯誤,請重新輸入:");      adminMenu();    }  }}

這裡switch採取String(jdk1.7以後才支援)可以讓使用者就算輸入錯誤也不會報錯導致程式執行終止,又要重新輸入(我攤牌了,就是懶)。

四、測試類

package com.softeem.lesson23.test2;public class Test {  public static void main(String[] args) {    Menu m = new Menu();    m.showMenu();  }}

五、實現部分介面截圖

以上就是全部程式碼。

16
最新評論
  • BSA-TRITC(10mg/ml) TRITC-BSA 牛血清白蛋白改性標記羅丹明
  • 帶你瞭解計算機界為開源做出貢獻的十位頂級泰斗,致敬