很久以前,有一個女人,開了一家酒店,她的名字叫孫二娘。下面是她找人做的點餐小程序。代碼如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
|
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
2
3
4
5
6
7
8
|
歡迎來到十字坡孫二娘大酒店 本店今日提供: 1 .鹵肉火燒 10 元 2 .北京烤鴨 200 元 3 .剁魚頭 100 元 4 .炒不爛 20 元 5 .燒茄子 30 元 數字點菜,ok下單,help顯示幫助 |
明碼標價,對吧。但是點餐之后大家會發現:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
歡迎來到十字坡孫二娘大酒店 本店今日提供: 1 .鹵肉火燒 10 元 2 .北京烤鴨 200 元 3 .剁魚頭 100 元 4 .炒不爛 20 元 5 .燒茄子 30 元 數字點菜,ok下單,help顯示幫助 5 燒茄子已添加 5 .燒茄子----- 13000 元 4 炒不爛已添加 5 .燒茄子----- 13000 元 4 .炒不爛----- 2000 元 |
這是個黑店!明碼標價,但是出來的價格不一樣。
總結
以上是本文關于點餐小程序的全部內容。故事是為了提高大家的興趣,還是要注重對代碼的理解。希望對大家有所幫助。
原文鏈接:http://blog.csdn.net/liuyh577/article/details/69372368