Java点餐小程序之黑心商人

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

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元

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

总结

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

(0)

相关推荐

  • Java实现排球比赛计分系统

    初步计划: 或许由于个人原因,排球计分系统在假期就完成了,一直未写博客,就这样一直在推就是不想写,在加上过完年就工作了,可能刚实习工作比较紧所以一直等到现在. 写这个系统之前我简单构思了一下,因为离校前我去洛阳参加了一个多月的Java培训,所以写项目用的ide是Java环境.刚开始考虑用jsp做界面,架构用mvc,但是后来一想工作量太大而且效果也不是很好.最终写了纯Java代码,在虚拟机上展示. 需求分析: 排球竞赛为五局三胜制,每局比赛中得够25分并且领先对方2分以上的一方将获得一局胜利,先获

  • java实现学籍管理系统

    本教程为大家分享了学籍管理系统的具体java代码,供大家参考,具体内容如下 1.需求分析 1.1系统功能设计 (1)能够查询学生的基本信息,如:学号,姓名年龄,班级和性别 (2)能对表格中的学生信息实现增加,删除,查找,修改等功能 (3)能将数据保存到MySQL数据库中,记录下来 (4)能把数据通过mysql数据库进行数据更新 1.2系统模块设计 学籍管理系统包括增加信息模块,删除信息模块,修改信息模块,查询信息模块,更新数据模块.系统管理人员能够查询学生的学号,姓名,性别,年龄,所获奖项等信息

  • Java传入用户名和密码并自动提交表单实现登录到其他系统的实例代码

    不用单点登录,模拟远程项目的登录页面表单,在访问这个页面的时候自动提交表单到此项目的登录action,就可以实现登录到其他系统. ssh框架项目 1.以下是本地系统的action代码: import java.io.IOException; import java.util.List; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.i

  • JAVA实现简单停车场系统代码

    JAVA项目中正号需要一个停车收费系统,就整理出来给大家分享一下,希望对大家有所帮助. <h1 accuse="qTitle" style="margin: 0px; padding: 0px; font-size: 16px; font-stretch: normal; line-height: 26px; font-family: "PingFang SC", "Lantinghei SC", "Microsoft

  • Java实现一个达达租车系统的步骤详解

    本文介绍的是利用java编写一个控制台版的"达达租车系统",下面话不多说了,来看看详细实现方法吧. 实现目标 java编写一个控制台版的"达达租车系统" 实现功能 1.展示所有可租车辆 2.选择车型.租车量 3.展示租车清单,包含:总金额.总载货量及其车型.总载人量及其车型 三大分析 数据模型分析 业务模型分析 显示和流程分析 实现效果 租车页面 租车账单 实现思路 首先定义一个Car类,它包含基本功能:车名.载客数.载货量.日租金.接着创建三个小类,分别是客车类.

  • Java中SSM+Shiro系统登录验证码的实现方法

     先给大家展示下效果图: 1.验证码生成类: import java.util.Random; import java.awt.image.BufferedImage; import java.awt.Graphics; import java.awt.Font; import java.awt.Color; /** * 验证码生成器类,可生成数字.大写.小写字母及三者混合类型的验证码. 支持自定义验证码字符数量: 支持自定义验证码图片的大小: 支持自定义需排除的特殊字符: * 支持自定义干扰线

  • Java点餐小程序之黑心商人

    很久以前,有一个女人,开了一家酒店,她的名字叫孙二娘.下面是她找人做的点餐小程序.代码如下: 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 { sta

  • java与微信小程序实现websocket长连接

    本文实例为大家分享了java与微信小程序实现websocket长连接的具体代码,供大家参考,具体内容如下 背景: 需要在小程序实现地图固定坐标下实时查看消息 java环境 :tomcat7 jdk1.7 1.java websocket 类 package com.qs.util; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.

  • Java解密微信小程序手机号的方法

    本文实例为大家分享了Java解密微信小程序手机号的具体代码,供大家参考,具体内容如下 第一步:创建AES解密工具类:代码如下 import org.apache.commons.codec.binary.Base64; import javax.crypto.Cipher; import javax.crypto.KeyGenerator; import javax.crypto.spec.IvParameterSpec; import javax.crypto.spec.SecretKeySp

  • java实现微信小程序加密数据解密算法

    一.概述 微信推出了小程序,很多公司的客户端应用不仅具有了APP.H5.还接入了小程序开发.但是,小程序中竟然没有提供Java版本的加密数据解密算法.这着实让广大的Java开发人员蛋疼. 微信小程序提供的加密数据解密算法链接 我们下载的算法示例如下: 木有Java!! 木有Java!! 木有Java!! 那么如何解决这个问题,我们一起来实现Java版本的微信小程序加密数据解密算法. 二.实现Java版本的微信小程序加密数据解密算法 1.创建项目 这里,我们创建一个Maven工程,具体创建步骤略.

  • 使用原生JS实现火锅点餐小程序(面向对象思想)

    本次小程序采用ES6开发标准,不会的宝宝们请先学习,再来观看吧! 使用条件:使用ES6标准开发:因为采用了Bootstrap在线,所以需要联网:VSCode开发工具,在本地服务器中打开. 代码展示: Demo.html(网页),Demo.css(样式),Test01.js(菜单类),Test02.js(循环菜单),Test03.js(增,删操作) 下面进行一一展示: Demo.html(网页): <!DOCTYPE html> <html lang="en">

  • java实现发牌小程序

    本文实例为大家分享了java实现发牌小程序的具体代码,供大家参考,具体内容如下 关键字:掌握Java数组.方法的基本定义 内容要求: 编写程序,项目名和类名均为PokerGame. 实现功能: (1) 共有m幅扑克牌,每幅扑克牌不包括大王和小王共52张牌. (2) 可能有n个人参与扑克游戏,2<=n<=52. (3) 程序运行时输入扑克牌幅数m和人数n,然后所有牌分别依次分发给n个人.不能整除时,每个人的牌数可以不同,如3个人1幅牌,则第1个人18张,第2个和第3个人17张牌. (4) 发牌完

  • SpringBoot带你实现一个点餐小程序

    目录 一,功能介绍 二,开发语言介绍 三,系统的界面介绍 四,核心代码演示 一,功能介绍 本点单系统主要是基于SpringBoot框架和小程序开发的,主要是为当代人们的生活提供更便利.更高效的服务,也为营销者提供更好的系统进行用户.商品.订单等信息管理. 该系统所实现的主要功能模块如下: 前台: 1)注册登录 2)个人中心 ① 修改个人信息 ② 修改收货地址 ③ 积分 3)商品浏览 4)商品搜索 5)购物车 6)下单支付后台: 1)注册登录 2)个人中心 ① 修改个人信息 ② 修改密码 3)用户

  • 微信小程序实现点餐小程序左侧滑动菜单

    目录 前言 一.初识scroll-view 二.左侧导航 三.右侧滑动 前言 最近在帮亲戚做一款微信的点餐小程序,以前从没有接触过小程序的我只能现做现卖.一边看文档一边实践尝试,在进行到点菜模块左侧滑动菜单时遇到了小小的阻碍.索性在查找一些资料和教程后主要功能实现了出来.特此记录下,也希望能帮助到需要做同样功能的同学. 效果图: 一.初识scroll-view 想要实现上述功能我们必须要借助微信为我们提供的scroll-view组件,没有了解过的同学需要先去简单阅读下API.从图中我们可以看出整

  • java实现KFC点餐小程序

    本文实例为大家分享了java实现KFC点餐系统的具体代码,供大家参考,具体内容如下 package KFC点餐系统; //food 类 public class Kfcfood { private String fname ; private int fnumb=1; private float fPrice; public Kfcfood() { super(); } public Kfcfood(String fname, int fnumb, float fPrice) { super()

  • java实现微信小程序登录态维护的示例代码

    相信不少喜欢开发的朋友都已经知道微信小程序是个什么物种了,楼主也是从小程序内测期间就开始关注,并且也写过几个已经上线的微信小程序.但是基本上都是写的纯前端,最近楼主从后端到前端写一个完整的小程序项目,中间碰到了一些问题,楼主会找一些个人觉得有学习价值的点不定时的拿出来跟大家分享,希望对你有一些帮助. 本次就从最基本的微信小程序登录态维护开始吧.小程序官方api文档里面有对登录态的一个完整的解释,并且有相关的代码.想看详情,可以出门右转:https://mp.weixin.qq.com/debug

随机推荐