设计一个程序,完成(英雄)商品的购买(day3)
文章目录
- 设计一个程序,完成(英雄)商品的购买
- 1.Account类
- 2.Ctrl类
- 3.Menu类
- 4.Tools类
- 5.Test类
设计一个程序,完成(英雄)商品的购买
展示商品信息(折扣)->输入商品价格->输入购买数量->提示付款->输入付款金额->打印购买小票(扩展)
共设计5个类
1.Account类
2.Ctrl类
3.Menu类
4.Tools类
5.Test类
1.Account类
public class Account {String username;String password;int money = 0;int state = 0;// -1 锁定状态 0 未登录 1 登陆int num = 0;// 记录密码输出错误的次数 如果次数超过3次 账户锁定 需要解锁public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}public int getMoney() {return money;}public void setMoney(int money) {this.money = money;}public int getState() {return state;}public void setState(int state) {this.state = state;}public int getNum() {return num;}public void setNum(int num) {this.num = num;}
}
2.Ctrl类
import java.util.Scanner;public class Ctrl {Account user = new Account();Menu menu = new Menu();Tools t = new Tools();Scanner choice = new Scanner(System.in);void no1(){menu.menu1();int number = choice.nextInt();while (number>4 || number<1){System.out.println("输入有误,请重新输入:");no1();}switch (number){case 1:t.denglu();if (user.num==3){no1();}else{no2();}break;case 2:t.register();no1();break;case 3:System.exit(0);}}void no2(){menu.menu2();System.out.println("输入你的选择:");int number = choice.nextInt();while (number>5 || number<1){System.out.println("输入有误,请重新输入:");no2();}switch (number){case 1:no3();break;case 2:System.out.println("暂未开放~");no2();break;case 3:no1();break;}}void no3(){menu.menu3();System.out.println("输入你的选择:");int number = choice.nextInt();while (number>6 || number<1){System.out.println("输入有误,请重新输入:");no3();}switch (number){case 1:t.deposit();t.goout();menu.naer();no3();break;case 2:t.deposit();t.goout();menu.ruiwen();no3();break;case 3:t.deposit();t.goout();menu.weien();no1();break;case 4:t.deposit();t.goout();menu.zhake();no1();break;case 5:t.deposit();t.goout();menu.jiesi();no1();break;case 6:no2();break;}}
}
3.Menu类
public class Menu {void menu1() {System.out.println("======================");System.out.println("\t" + "英雄联盟商城登录界面\n" +"\t" + "1.用户登录" + "\n" +"\t" + "2.新用户注册" + "\n" +"\t" + "3.退出系统");System.out.println("======================");System.out.println("(温馨提示)请输入你的选项:");}void menu2() {System.out.println("======================");System.out.println("\t" + "英雄联盟商城首页\n" +"\t" + "1.进入英雄小超市" + "\n" +"\t" + "2.休闲小游戏" + "\n" +"\t" + "3.退出登录");System.out.println("======================");System.out.println("(温馨提示)请输入你的选项:");}void menu3() {System.out.println();System.out.println("========================================================");System.out.println("编号 姓名 昵称 价格 库存 描述\n" +"1 纳尔 迷失之牙 3500 100 丛林不会原谅盲目与无知" + "\n" +"2 锐雯 放逐之刃 4000 100 她是残忍高效的战士" + "\n" +"3 薇恩 暗夜猎手 3500 100 这个世界不想人们想象的那么美好" + "\n" +"4 扎克 生化魔人 3000 100 即使你没有脊柱,你也必须站起来" + "\n" +"5 杰斯 未来守护者 2500 100 武装着睿智与魅力,你的选择没有错" + "\n"+"6 退出英雄小超市");System.out.println("========================================================");System.out.println("(温馨提示)请输入你的选项:");}void naer() {System.out.println("\t\t\t\t\t" + "英雄商城购买英雄\n");System.out.println("英雄购买票据");System.out.println("========================================================");System.out.println("\n" +"\t英雄名称: 纳尔(史诗)\n" +"\t英雄价格: 3500\n" +"\t英雄属性:生命值428(+85)/能量值200(+0)/移动速度425/攻击力55.8(+3.2)\n" +"\t 攻击速度0.651(+3.1%)/护甲值24(+1.25)/攻击距离125" + "\n\n" +"\t英雄座右铭: 一人之行可灭世,众人之勤可救世!" + "\n" +"插播广告:当风云变色,当流离失所,世界不再是旧日模样" + "\n" +"你是否会为了自己的梦想战斗,直至力战身亡,直至彼岸他乡");System.out.println("========================================================");}void ruiwen() {System.out.println("\t\t\t\t\t" + "英雄商城购买英雄\n");System.out.println("英雄购买票据");System.out.println("========================================================");System.out.println("\n" +"\t英雄名称: 锐雯(史诗)\n" + "" +"\t英雄价格: 4000\n" +"\t英雄属性:生命值428(+85)/能量值200(+0)/移动速度425/攻击力55.8(+3.2)\n" +"\t 攻击速度0.651(+3.1%)/护甲值24(+1.25)/攻击距离125" + "\n\n" +"\t英雄座右铭: 一人之行可灭世,众人之勤可救世!" + "\n" +"插播广告:当风云变色,当流离失所,世界不再是旧日模样" + "\n" +"你是否会为了自己的梦想战斗,直至力战身亡,直至彼岸他乡");System.out.println("========================================================");}void weien(){System.out.println("\t\t\t\t\t" + "英雄商城购买英雄\n");System.out.println("英雄购买票据");System.out.println("========================================================");System.out.println("\n" +"\t英雄名称: 薇恩(史诗)\n" +"\t英雄价格: 3500\n" +"\t英雄属性:生命值428(+85)/能量值200(+0)/移动速度425/攻击力55.8(+3.2)\n" +"\t 攻击速度0.651(+3.1%)/护甲值24(+1.25)/攻击距离125" + "\n\n" +"\t英雄座右铭: 一人之行可灭世,众人之勤可救世!" + "\n" +"插播广告:当风云变色,当流离失所,世界不再是旧日模样" + "\n" +"你是否会为了自己的梦想战斗,直至力战身亡,直至彼岸他乡");System.out.println("========================================================");}void zhake(){System.out.println("\t\t\t\t\t" + "英雄商城购买英雄\n");System.out.println("英雄购买票据");System.out.println("========================================================");System.out.println("\n" +"\t英雄名称: 扎克(史诗)\n" +"\t英雄价格: 3500\n" +"\t英雄属性:生命值428(+85)/能量值200(+0)/移动速度425/攻击力55.8(+3.2)\n" +"\t 攻击速度0.651(+3.1%)/护甲值24(+1.25)/攻击距离125" + "\n\n" +"\t英雄座右铭: 一人之行可灭世,众人之勤可救世!" + "\n" +"插播广告:当风云变色,当流离失所,世界不再是旧日模样" + "\n" +"你是否会为了自己的梦想战斗,直至力战身亡,直至彼岸他乡");System.out.println("========================================================");}void jiesi(){System.out.println("\t\t\t\t\t" + "英雄商城购买英雄\n");System.out.println("英雄购买票据");System.out.println("========================================================");System.out.println("\n" +"\t英雄名称: 杰斯(史诗)\n" +"\t英雄价格: 3500\n" +"\t英雄属性:生命值428(+85)/能量值200(+0)/移动速度425/攻击力55.8(+3.2)\n" +"\t 攻击速度0.651(+3.1%)/护甲值24(+1.25)/攻击距离125" + "\n\n" +"\t英雄座右铭: 一人之行可灭世,众人之勤可救世!" + "\n" +"插播广告:当风云变色,当流离失所,世界不再是旧日模样" + "\n" +"你是否会为了自己的梦想战斗,直至力战身亡,直至彼岸他乡");System.out.println("========================================================");}
}
4.Tools类
import java.util.Scanner;public class Tools {Account user = new Account();Menu menu = new Menu();void register(){System.out.println("请输入用户注册的用户名:");System.out.println("请输入用户注册的密码:");Scanner name = new Scanner(System.in);user.username = name.nextLine();Scanner passwd = new Scanner(System.in);user.password = passwd.nextLine();}void denglu(){System.out.println("请输入用户登陆的用户名:");Scanner name = new Scanner(System.in);System.out.println("请输入用户登陆的密码:");Scanner passwd = new Scanner(System.in);if( user.num!= 3 && user.state !=-1 && user.username.equals(name.nextLine()) && user.password.equals(passwd.nextLine())){user.state = 1;}else{user.num += 1;denglu();}if(user.num == 3) {user.state = -1;System.out.println("账户已锁定,需要解锁");}}void deposit(){System.out.println("请输入你所存储的金额:");Scanner money = new Scanner(System.in);user.money += Integer.parseInt(money.nextLine());System.out.println("您的余额为:"+ user.money + "元");}void goout(){System.out.println("请输入你所付款的金额:");Scanner money = new Scanner(System.in);int m=money.nextInt();if (user.money >= m){user.money -= m;System.out.println("您的余额为:"+ user.money + "元");} else{System.out.println("金额不足,请重新输入:");goout();}}
}
5.Test类
public class Test {public static void main(String[] args) {Ctrl ctrl = new Ctrl();ctrl.no1();}
}
设计一个程序,完成(英雄)商品的购买(day3)相关推荐
- 编译原理实验报告_任意给定一个正规式 r (包括连接、或、闭包运算),根据 Thompson算法设计一个程序,生成与该正规式等价的 NFA N 。
任意给定一个正规式 r (包括连接.或.闭包运算),根据 Thompson算法设计一个程序,生成与该正规式等价的 NFA N . 百度网盘下载 传送门 提取码:bzjn
- Java版 设计一个程序, 输入三位数a, 分别输出个,十,百位
1. 设计一个程序, 输入三位数a, 分别输出个,十,百位. (0<a<1000) 样例输入: 251 样例输出: 2 5 1 package package01; import java ...
- 设计一个程序,帮助小学生练习10以内的加法题目
设计一个程序,帮助小学生练习10以内的加法 详情: 随机生成加法题目: 共进行5次计算: 学生查看题目并输入答案: 判别学生答题是否正确? 退出时, 统计学生答题总数,正确数量及正确率(保留两位小数点 ...
- mysql一百转化为五分制_设计一个程序,将从键盘上输入的百分制成绩转换成对应的五分制成绩并输出。90分以上为A,80~90分为B,...
设计一个程序,将从键盘上输入的百分制成绩转换成对应的五分制成绩并输出.90分以上为A,80~90分为B,以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内 ...
- lunix 习题 设计一个程序 cuts,它由标准输入读取数据...
设计一个程序 cuts,它由标准输入读取数据,获取由第一个参数 n 和第二个参数 m 所限定范围的数据,n 和 m 都是整数,即从输入的字符串中抽取第 n 个字符至第 m 个字符之间的所有字符(包括这 ...
- html成绩百分制转换为,设计一个程序,将从键盘上输入的百分制成绩转换成对应的五分制成绩并输出。90分以上为A,80~90分为B,...
设计一个程序,将从键盘上输入的百分制成绩转换成对应的五分制成绩并输出.90分以上为A,80~90分为B,以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内 ...
- java版 设计一个程序, 输入整数l, 求边长为l的正方形面积, 比直径为l的圆形面积大多少.
2. 设计一个程序, 输入整数l, 求边长为l的正方形面积, 比直径为l的圆形面积大多少. (0<l<1000, PI取3.14, 输出结果保留两位小数) 样例输入: 3 样例输出: 1. ...
- java每日一练——第四天:输入两个整数num1和num2,请你设计一个程序,计算并输出它们的和、差、积、整数商及余数。
文章目录 题目描述 问题分析 代码实现 运行结果 网上参考 结语 题目描述 输入两个整数num1和num2,请你设计一个程序,计算并输出它们的和.差.积.整数商及余数. 输入 输入只有两个正整数num ...
- 计算区间素数和,杨老师正在上《离散数学》课程的“数论”内容,讲授素数的知识。素数又称为质数。一个大于1的整数p是素数,当且仅当p只能被1和自身整除。很显然,2是最小的素数。他想设计一个程序
杨老师正在上<离散数学>课程的"数论"内容,讲授素数的知识.素数又称为质数.一个大于1的整数p是素数,当且仅当p只能被1和自身整除.很显然,2是最小的素数.他想设计一个 ...
最新文章
- 用-force –opengl 指令_苹果新系统ios14新功能汇总 轻点背面等小技巧怎么用
- 揭开webRTC媒体服务器的神秘面纱——WebRTC媒体服务器开源项目介绍
- 实现Windows Phone、Android和iOS平台的统一硬件访问
- Grub2倒计时失效
- mysql range用法_MySQL的常用函数
- LeetCode 966. 元音拼写检查器(哈希)
- 2016/06/11
- java hashmap getitem_java中HashMap使用
- 《SQL高级应用和数据仓库基础(MySQL版)》作业v2 ·001【MySQL50题】
- C#在Web项目中关闭Excel进程的方法
- php有的图片显示不出来,图片显示不出来,但是数据库里有显示
- 实例:用C#.NET手把手教你做微信公众号开发(1)--接入
- 1004 - treap - 宠物收养所
- SAP MR21修改标准价
- 基于rk3288的驱动编译
- 分文件编辑报错信息有.bss
- 2021了,最流行的密码依旧是123456
- 施坦威D4三角钢琴-e-instruments Session Keys Grand S Kontakt
- JMX 入门(一)基础操作
- u3d5第一人称射击游戏(C#脚本)完整版并在iOS9.3系统上真机运行
热门文章
- 运动耳机什么牌子好,盘点目前六款好的运动耳机推荐
- Linux学习(一)Ubuntu20.04 LTS (Focal Fossa)以及 Anaconda CUDA CuDNN PyTorch VisualStudioCode 的安装
- macbook air vue3安装
- C/C++基础题073.数组的右方区域
- Thinkpad导航键更换成上下翻页键
- 手机备忘录怎么打出对勾符号
- 前AMD全球副总裁单羿加入鉴智机器人 后者获千万美元融资
- winform控件之checkedListBox
- CHECKEDLISTBOX用法总结
- 详解java重定向和转发的区别