欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Java点餐小程序之黑心商人

程序员文章站 2024-02-29 16:01:22
很久以前,有一个女人,开了一家酒店,她的名字叫孙二娘。下面是她找人做的点餐小程序。代码如下: import java.util.hashmap; import...

很久以前,有一个女人,开了一家酒店,她的名字叫孙二娘。下面是她找人做的点餐小程序。代码如下:

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元

这是个黑店!明码标价,但是出来的价格不一样。

总结

以上是本文关于点餐小程序的全部内容。故事是为了提高大家的兴趣,还是要注重对代码的理解。希望对大家有所帮助。