Java点餐小程序之黑心商人

发布时间 - 2026-01-11 03:13:15    点击率:

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

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元

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

总结

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


# java  # 点餐  # 点餐系统  # java实现KFC点餐小程序  # 用SpringBoot+Vue+uniapp小程序实现在线房屋装修管理系统  # Java基于IDEA实现qq邮件发送小程序  # 微信小程序与Java后端接口交互  # 微信小程序微信登录的实现方法详解(JAVA后台)  # 微信小程序获取手机号的完整实例(Java后台实现)  # java实现日历窗口小程序  # Java中生成微信小程序太阳码的实现方案  # java小程序火锅店点餐系统  # 卤肉  # 烧茄子  # 下单  # 北京烤鸭  # 欢迎来到  # 孙二娘  # 今日  # 明码标价  # 开了  # 这是个  # 就到  # 名字叫  # 很久以前  # 人做  # 对吧  # 稍后  # 移除  # 有一个  # 她找  # 是为了 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 如何为不同团队 ID 动态生成多个“认领值班”按钮  Laravel如何使用Vite进行前端资源打包?(配置示例)  laravel怎么在请求结束后执行任务(Terminable Middleware)_laravel Terminable Middleware请求结束任务执行方法  如何正确下载安装西数主机建站助手?  微信小程序 闭包写法详细介绍  怎么制作一个起泡网,水泡粪全漏粪育肥舍冬季氨气超过25ppm,可以有哪些措施降低舍内氨气水平?  大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?  php后缀怎么变mp4格式错误_修改扩展名提示格式不对怎么办【技巧】  Laravel怎么清理缓存_Laravel optimize clear命令详解  javascript中的try catch异常捕获机制用法分析  Chrome浏览器标签页分组怎么用_谷歌浏览器整理标签页技巧【效率】  如何为不同团队 ID 动态生成多个非值班状态按钮  EditPlus中的正则表达式实战(6)  打造顶配客厅影院,这份100寸电视推荐名单请查收  小视频制作网站有哪些,有什么看国内小视频的网站,求推荐?  jQuery中的100个技巧汇总  在线教育网站制作平台,山西立德教育官网?  Laravel Seeder怎么填充数据_Laravel数据库填充器的使用方法与技巧  Win11怎么关闭透明效果_Windows11辅助功能视觉效果设置  电视网站制作tvbox接口,云海电视怎样自定义添加电视源?  Python高阶函数应用_函数作为参数说明【指导】  Thinkphp 中 distinct 的用法解析  详解vue.js组件化开发实践  如何在云主机上快速搭建网站?  为什么要用作用域操作符_php中访问类常量与静态属性的优势【解答】  PHP的CURL方法curl_setopt()函数案例介绍(抓取网页,POST数据)  Laravel中的Facade(门面)到底是什么原理  Win11怎么开启自动HDR画质_Windows11显示设置HDR选项  Laravel如何处理文件上传_Laravel Storage门面实现文件存储与管理  Swift中循环语句中的转移语句 break 和 continue  如何挑选最适合建站的高性能VPS主机?  网站优化排名时,需要考虑哪些问题呢?  深圳防火门网站制作公司,深圳中天明防火门怎么编码?  如何在IIS7中新建站点?详细步骤解析  Laravel如何从数据库删除数据_Laravel destroy和delete方法区别  Laravel如何正确地在控制器和模型之间分配逻辑_Laravel代码职责分离与架构建议  阿里云网站搭建费用解析:服务器价格与建站成本优化指南  高防服务器租用如何选择配置与防御等级?  WEB开发之注册页面验证码倒计时代码的实现  如何快速打造个性化非模板自助建站?  如何在阿里云部署织梦网站?  laravel怎么为应用开启和关闭维护模式_laravel应用维护模式开启与关闭方法  如何制作一个表白网站视频,关于勇敢表白的小标题?  香港服务器网站卡顿?如何解决网络延迟与负载问题?  Laravel如何实现URL美化Slug功能_Laravel使用eloquent-sluggable生成别名【方法】  如何在宝塔面板中修改默认建站目录?  原生JS获取元素集合的子元素宽度实例  Win11怎样安装网易有道词典_Win11安装词典教程【步骤】  如何在Windows虚拟主机上快速搭建网站?  ChatGPT怎么生成Excel公式_ChatGPT公式生成方法【指南】