java模拟银行_实验01——java模拟银行ATM系统

1 packagecn.tedu.yinhang;2

3 importjava.util.Scanner;4

5 /**

6 *@author赵瑞鑫 E-mail:1922250303@qq.com7 *@version1.08 * @创建时间:2020年7月27日 下午7:04:279 * @类说明:10 */

11 public class ATM implementsPayTelInter {12 privateUnionCard card;13 Scanner sc = newScanner(System.in);14

15 //插卡,不同卡片显示不同的menu

16 public voidinsertCard(UnionCard card) {17 this.card =card;18 //测试卡片是否为BOC,19 //BOC为Card的实例对象

20 if (card instanceofBOC) {21 checkPWA();22 }23 }24

25 public voidcheckPWA() {26 Scanner sc = newScanner(System.in);27 System.out.println("请输入密码:");28 int pw =sc.nextInt();29 if(card.checkPw(pw)) {30 while (true)31 showBocMenu();32 } else{33 System.out.println("密码错误");34 }35 }36

37 //BOC菜单

38 public voidshowBocMenu() {39 /*Scanner sc = new Scanner(System.in);40 System.out.println("请输入密码:");41 int pw = sc.nextInt();42 if (card.checkPw(pw)) {43 while (true) {*/

44 System.out.println("*******************************");45 System.out.println(" 云尚天成银行一体化试行系统 ");46 System.out.println(" 操作1 余额查询");47 System.out.println(" 操作2 存 款");48 System.out.println(" 操作3 取 款 ");49 System.out.println(" 操作4 生活缴费");50 System.out.println(" 操作5 退 出");51 System.out.println("请您选择操作数:");52 int key =sc.nextInt();53 switch(key) {54 case 1:55 showBalance();56 System.out.println("输入0返回:");57 int n =sc.nextInt();58 if(n==0)showBocMenu();59 break;60 case 2:61 saveBalance();62 System.out.println("输入0返回:");63 int n1 =sc.nextInt();64 if(n1==0)showBocMenu();65 break;66 case 3:67 takeBalance();68 System.out.println("输入0返回:");69 int n2 =sc.nextInt();70 if(n2==0)showBocMenu();71 break;72 case 4:73 payMethod();74 System.out.println("输入0返回:");75 int n4 =sc.nextInt();76 if(n4==0)showBocMenu();77 break;78 case 5:79 System.exit(0);80 break;81 default:82 System.out.println("请选择合法操作!");83 System.out.println("输入0返回:");84 int n5 =sc.nextInt();85 if(n5==0)showBocMenu();86 break;87 }88 }89

90 /*} else {91 System.out.println("密码错误");92 }*/

93

94

95 //显示余额

96 private voidshowBalance() {97 System.out.println(card.getBalance());98 }99

100 //存钱

101 private voidsaveBalance() {102 Scanner sc = newScanner(System.in);103 System.out.println("请存款:(提示:存款数值应不小于100且为100的倍数)");104 int money =sc.nextInt();105 card.saveMoney(money);106 System.out.println("成功!");107 System.out.println("您当前余额为:");108 System.out.println(card.getBalance());109 }110

111 //取钱

112 private voidtakeBalance() {113 Scanner sc = newScanner(System.in);114 System.out.println("请取款:(提示:取款数值应不小于100且为100的倍数)");115 int money =sc.nextInt();116 card.takeMoney(money);117 System.out.println("您当前余额为:");118 System.out.println(card.getBalance());119 }120

121 private voidpayMethod() {122 System.out.println("*******************************");123 System.out.println(" 云尚天成银行ATM系统 ");124 System.out.println(" 操作1 手机话费");125 System.out.println(" 操作2 水电费");126 System.out.println(" 操作3 医疗费 ");127 System.out.println(" 操作4 煤气费");128 System.out.println(" 操作5 返 回");129 System.out.println("请您选择操作数:");130 int key =sc.nextInt();131 switch(key) {132 case 1:133 Scanner sc = newScanner(System.in);134 System.out.println("请输入充值数额:");135 int money =sc.nextInt();136 payTel(money);137 System.out.println("成功!");138 System.out.println("您当前余额为:");139 System.out.println(card.getBalance());140 break;141 case 2:142

143 break;144 case 3:145

146 break;147 case 4:148

149 break;150 case 5:151

152 break;153 default:154 break;155 }156 }157

158 @Override159 public boolean payTel(intmoney) {160 //TODO Auto-generated method stub

161 if (money<0&&money%100!=0) {162 System.err.println("数值不合法!");163 }else{164 double balance =card.getBalance();165 balance -=money;166 card.setBalance(balance);167 }168 return false;169 }170

171 }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值