Java基础-day05-超市收银系统案例题
时间:2022-05-04
本文章向大家介绍Java基础-day05-超市收银系统案例题,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
Java基础-day05-超市收银系统案例题
案例描述
将超市购物小票案例中,键盘录入部分封装为方法。
将switch语句完成的三个分支代码逻辑封装为3个方法
当用户输入1时,让用户输入所要购买的商品数量
当用户输入2时,给用户打印出对应的购物小票
当用户输入3时,退出系统
eclipse展示
具体实现代码
package StudentJavaSEday05;
import java.util.Date;
import java.util.Scanner;
/**
* 将超市购物小票案例中,键盘录入部分封装为方法。 将switch语句完成的三个分支代码逻辑封装为3个方法 当用户输入1时,让用户输入所要购买的商品数量
* 当用户输入2时,给用户打印出对应的购物小票 当用户输入3时,退出系统
* @author 奋斗蒙
*/
public class FangFashopping {
// 1.初始化系统
// 定义商品
static String nmName = "内蒙古牛肉干";// 商品名称
static String nmID = "(088881)"; // 商品id
static double nmPrice = 25.50; // 商品单价
static int nmNumber = 0; // 商品数量
static double nmMoney = 0; // 商品金额
static String xjName = "新疆羊肉串";
static String xjID = "(088882)";
static double xjPrice = 16.00;
static int xjNumber = 0;
static double xjMoney = 0;
static String hnName = "海南椰果";
static String hnID = "(088883)";
static double hnPrice = 14.50;
static int hnNumber = 0;
static double hnMoney = 0;
public static void main(String[] args) {
// while循环,系统不退出一直运行
while (true) {
// 2.展示系统功能
System.out.println("-------------欢迎访问Java帮帮-超市购物收银系统---------------");
System.out.println("选择系统功能:1.输入购买商品数量。 2.打印购物小票 3.退出系统");
System.out.println("请输入功能编号进入功能:");
// 3.获取用户键盘输入数据
int gn = getScanner();
// 4.根据用户输入选择具体操作的功能
switch (gn) {
case 1:
buy();
break;
case 2:
print();
break;
case 3:
exit();
break;
default:
break;
}
}
}
/**
* 获取键盘输入数字方法(选择功能) 返回值类型:int 方法名:getScanner 参数列表:空
*
* @return
*/
private static int getScanner() {
Scanner sc = new Scanner(System.in);
int scanner = sc.nextInt();
return scanner;
}
/**
* 获取购买商品数量与计算价格 返回值类型:void 方法名:buy 参数列表:空
*
*/
private static void buy() {
System.out.println("请输入您购买" + nmName + "的数量");
nmNumber = getScanner();
System.out.println("请输入您购买" + xjName + "的数量");
xjNumber = getScanner();
System.out.println("请输入您购买" + hnName + "的数量");
hnNumber = getScanner();
// 计算每种商品的购买金额
nmMoney = nmPrice * nmNumber;
xjMoney = xjPrice * xjNumber;
hnMoney = hnPrice * hnNumber;
}
/**
* 打印小票方法 返回值类型:void 方法名:print 参数列表:空
*/
private static void print() {
// 商品种类
int goodsItem = 3;
// 商品数量
int goodsNumber = nmNumber + xjNumber + hnNumber;
// 商品金额
double goodsMoney = nmMoney + xjMoney + hnMoney;
// 打印小票
// 票头
System.out.println("----------------欢迎光临--------------");
System.out.println("商品名称 商品ID 单价 数量 金额");
System.out.println("--------------------------------------");
// 票体
System.out.println(
nmName + " " + nmID + " " + nmPrice + " " + nmNumber + " " + nmMoney);
System.out.println(
xjName + " " + xjID + " " + xjPrice + " " + xjNumber + " " + xjMoney);
System.out.println(
hnName + " " + hnID + " " + hnPrice + " " + hnNumber + " " + hnMoney);
System.out.println("---------------------------------------");
// 票脚
System.out.println("共消费了 " + goodsItem + "种商品 共计" + goodsNumber + "件");
System.out.println("总共消费金额: " + goodsMoney);
System.out.println("--------请凭小票到服务台换取发票----------");
System.out.println("-----------------------------------------");
System.out.println(new Date());//当前时间
}
/**
* 退出系统方法 返回值类型:void 方法名:exit 参数列表:空
*/
private static void exit() {
System.out.println("程序结束,期待下次为您服务!");
// 退出方法,结束正在运行的虚拟机,0表示正常退出
System.exit(0);
}
}
运行结果
- 【译】TensorFlow实现Batch Normalization
- 关于Python语言规范你需要知道的一些小tips
- R语言可视化——REmap(路径图)
- python面向对象
- 字符串hash入门
- R语言数据处理——数据合并与追加
- python爬取链家租房之获取房屋页面的详细信息(房名,地址,房价,面积,url)
- 信用卡“坏账”客户分析(二)
- Mac上提升python运算速度-PyPy初体验
- python处理json数据(复杂的json转化成嵌套字典并处理)
- Pointer-network理论及tensorflow实战
- python3 log文件处理获取某天需要的数据
- 实战深度强化学习DQN-理论和实践
- Python 工匠:编写条件分支代码的技巧
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释