您好,登錄后才能下訂單哦!
很久以前,有一個女人,開了一家酒店,她的名字叫孫二娘。下面是她找人做的點餐小程序。代碼如下:
import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Map.Entry; import java.util.ArrayList; import java.util.Scanner; import java.util.Set; public class MyDianCai { static HashMap<String, String> hs = new HashMap<>(); static List<Map> list = new ArrayList<>(); static int sum = 0; public static void main(String[] args) { Scanner s = new Scanner(System.in); System.out.println("歡迎來到十字坡孫二娘大酒店"); list(); while (true) { String in = s.nextLine(); String[] remove = in.split("[0-9]"); if (Character.isDigit(in.charAt(0))) { dianCai(in); } else if (in.equals("ok")) { ok(); } else if (in.equals("sum")) { sum(); } else if (in.equals("order")) { order(); } else if (remove[0].equals("-")) { String[] removes = in.split("-"); remove(removes[1]); } else if (in.equals("list")) { list(); } else if (in.equals("help")) { help(); } else if (in.equals("exit")) { break; } } System.out.println("退出系統"); } public static void list() { System.out.println("本店今日提供:"); System.out.println("1.鹵肉火燒 \t10元"); System.out.println("2.北京烤鴨 \t200元"); System.out.println("3.剁魚頭 \t100元"); System.out.println("4.炒不爛 \t20元"); System.out.println("5.燒茄子 \t30元"); System.out.println("數字點菜,ok下單,help顯示幫助"); } public static void dianCai(String name) { switch (name) { case "1": hs.put("1.鹵肉火燒", "1000元"); System.out.println("鹵肉火燒已添加"); break; case "2": hs.put("2.北京烤鴨", "20000元"); System.out.println("北京烤鴨已添加"); break; case "3": hs.put("3.剁魚頭", "10000元"); System.out.println("剁魚頭已添加"); break; case "4": hs.put("4.炒不爛", "2000元"); System.out.println("炒不爛已添加"); break; case "5": hs.put("5.燒茄子", "13000元"); System.out.println("燒茄子已添加"); break; } Set<String> set = hs.keySet(); for (String key : set) { String values = hs.get(key); System.out.println(key + "-----" + values); } } public static void ok() { list.add(hs); hs = new HashMap<>(); System.out.println("下單成功,客觀先坐,菜稍后就到!下一位!"); } public static void order() { Set<String> set = hs.keySet(); for (String key : set) { String values = hs.get(key); System.out.println(key + "-----" + values); } } public static void remove(String removes) { switch (removes) { case "1": hs.remove("1.鹵肉火燒"); break; case "2": hs.remove("2.北京烤鴨"); break; case "3": hs.remove("3.剁魚頭"); break; case "4": hs.remove("4.炒不爛"); break; case "5": hs.remove("5.燒茄子"); break; } Set<String> set = hs.keySet(); for (String key : set) { String values = hs.get(key); System.out.println(key + "------" + values); } } public static void sum() { for (Map m : list) { Set<String> set = m.keySet(); for (String key : set) { String values = (String) m.get(key); String[] prices = values.split("元"); int price = Integer.parseInt(prices[0]);// 將字符串轉類型換為int型 sum += price; } } System.out.println("今天收入"+sum+"元"); } public static void help() { System.out.println("list\t-列菜單"); System.out.println("數字\t-點菜"); System.out.println("-數字\t-移除已點的菜"); System.out.println("ok\t-結束點菜并生成訂單,然后下單"); System.out.println("order\t-查看已點的菜"); System.out.println("sum\t-統計銷售額"); System.out.println("exit\t-退出"); System.out.println("help\t-打印幫助信息"); } }
輸出結果如下:
歡迎來到十字坡孫二娘大酒店 本店今日提供: 1.鹵肉火燒 10元 2.北京烤鴨 200元 3.剁魚頭 100元 4.炒不爛 20元 5.燒茄子 30元 數字點菜,ok下單,help顯示幫助
明碼標價,對吧。但是點餐之后大家會發現:
歡迎來到十字坡孫二娘大酒店 本店今日提供: 1.鹵肉火燒 10元 2.北京烤鴨 200元 3.剁魚頭 100元 4.炒不爛 20元 5.燒茄子 30元 數字點菜,ok下單,help顯示幫助 5 燒茄子已添加 5.燒茄子-----13000元 4 炒不爛已添加 5.燒茄子-----13000元 4.炒不爛-----2000元
這是個黑店!明碼標價,但是出來的價格不一樣。
總結
以上是本文關于點餐小程序的全部內容。故事是為了提高大家的興趣,還是要注重對代碼的理解。希望對大家有所幫助。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。