package ATM;
import java.io.BufferedReader;
import java.io.InputStreamReader;
class Account{ private String number=null; private String name=null; private String password=null; private double money=0.0; public Account(String number,String name,String password,double money) { this.number=number; this.name=name; this.password=password; this.money=money; }
public String getNumber() { return number; }
public String getName() { return name; }
public String getPassword() { return password; }
public double getMoney() { return money; }
protected void sub_Balance(double mon) { money-=mon; } protected void add_Balance(double mon) { money+=mon; } }
class ATM { Account act; public ATM() { act=new Account("000", "test", "111", 5000); } protected void Welcome() { String str="------------------------"; System.out.print(str+"\n"); System.out.println("1.取款。"+"\n"+ "2.查询。"+"\n"+ "3.存款."+"\n"+ "4.退出系统."+"\n"); System.out.println(str+"\n"); } protected void Load_Sys() throws Exception { String card,pwd; int counter=0; BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); do { System.out.println("请输入您的卡号"); card=br.readLine(); System.out.println("请输入您的密码"); pwd=br.readLine(); if(!isRight(card,pwd)) { System.out.println("您的卡号或密码输入有误。"); counter++; } else SysOpter(); } while (counter<3); System.exit(1); } protected void SysOpter() throws Exception { int num; BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); System.out.println("请选择您要操作的项目(1-4):"); num=br.read(); switch(num) { case 49:GetBalance();break; case 50:Inqu_Info();break; case 51:AddBalance();break; case 52:Exit_Sys();break; } System.exit(1); } protected void Inqu_Info()throws Exception { System.out.println("-------------------------\n"+ "账户:"+act.getNumber()+"\n"+ "姓名:"+act.getName()+"\n"+ "余额:"+act.getMoney()+"\n"+ "----------------------\n"); SysOpter(); } public void GetBalance()throws Exception { String str=null,str1; BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); do{ System.out.println("请输入取款数目:"); str=br.readLine(); double qu=Double.valueOf(str).doubleValue(); if(qu>act.getMoney()) { System.out.println("余额不足,请重新输入您要取的数目:"); } else { act.sub_Balance(qu); System.out.println("取款成功,您的账户余额为:"+act.getMoney()); Welcome(); SysOpter(); } }while(true); } public void AddBalance()throws Exception { String str=null,str1; BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); do { System.out.println("请输入存款数目"); str=br.readLine(); double qu=Double.valueOf(str).doubleValue(); act.add_Balance(qu); System.out.println("存款成功,您的账户余额为:"+act.getMoney()); Welcome(); SysOpter(); }while(true); } protected boolean isBalance() { if(act.getMoney()<0) { return false; } return true; } protected boolean isRight(String card,String pwd) { if(act.getNumber().equals(card)&&act.getPassword().equals(pwd)) return true; else return false; } protected void Exit_Sys(){ System.out.println("感谢您使用本系统,再见!"); System.exit(1); } } public class Test { public static void main(String[] args)throws Exception { ATM atm=new ATM(); atm.Welcome(); atm.Load_Sys(); }
- 在Jmeter中使用自定义编写的Java测试代码
我们在做性能测试时,有时需要自己编写测试脚本,很多测试工具都支持自定义编写测试脚本,比如LoadRunner就有很多自定义脚本的协议,比如"C Vuser","Java ...
- 自定义编写jmeter的Java测试代码
我们在做性能测试时,有时需要自己编写测试脚本,很多测试工具都支持自定义编写测试脚本,比如LoadRunner就有很多自定义脚本的协议,比如"C Vuser","JavaV ...
- 科大讯飞语音转文字以及中文分词的Java测试代码
我录了一段音存储在这个test.m4a文件里,语音内容为"测试一下Netweaver对于并发请求的响应性能". 使用如下Java代码进行测试: package com.iflyte ...
- MongoDB之Java测试代码(DAO层)
MongoInit.java是数据库初始化及连接类 MongoUtils.java是对mongodb的各种操作方法 MongoInit.java package com.wlwcloud.datate ...
- 自学Java测试代码二String, StringBuffer
2017-08-23 10:38:01 writer:pprp package test; import java.util.*; public class test2 { public static ...
- 自学Java测试代码 - 简单地Student类
2017-08-23 23:45:38 writer:pprp 写这个还蛮开心的 package test; public class Student { //创建成员变量 String name ...
- 自学Java测试代码一数据类型、数组使用
2017-08-22 21:23:37. writer:pprp package test; public class helloWorld { int maxn = 123; //常量,需要定义一个 ...
- Android网络传输中必用的两个加密算法:MD5 和 RSA (附java完成测试代码)
MD5和RSA是网络传输中最常用的两个算法,了解这两个算法原理后就能大致知道加密是怎么一回事了.但这两种算法使用环境有差异,刚好互补. 一.MD5算法 首先MD5是不可逆的,只能加密而不能解密.比如明 ...
- Java&Selenium自动化测试实现页面元素、页面对象及测试代码分离
一.摘要 本篇博文将介绍自动化测试实现页面元素.页面对象及测试代码分离在自动化框架中的实现 二.解析页面元素定位信息 首先,将页面元素与实际的代码分离,首先我们将页面元素定位信息和定位表达式保存在属性 ...
随机推荐
- 利用PyMySQL库连接数据库
安装与准备 这是python3的库,所以windows下安装不会像python2那样各种奇葩VC错误.是比较方便的傻瓜安装. Windows平台下: py -3 -m pip install PyMy ...
- LOJ #2542「PKUWC2018」随机游走
$ Min$-$Max$容斥真好用 $ PKUWC$滚粗后这题一直在$ todolist$里 今天才补掉..还要更加努力啊.. LOJ #2542 题意:给一棵不超过$ 18$个节点的树,$ 5000 ...
- Codeforces891C(892E)
传送门:here 简述题意: ...
- LR的损失函数&为何使用-log损失函数而非平方损失函数
https://blog.csdn.net/zrh_CSDN/article/details/80934278 Logistic回归的极大似然估计求解参数的推导: https://blog.csdn. ...
- Spark架构与作业执行流程简介
https://www.cnblogs.com/shenh062326/p/3658543.html
- C++ operator(重载操作符) 【转】
转自:http://www.cnblogs.com/xiangxiaodong/archive/2012/02/12/2348144.html operator是C++的关键字,它和运算符一起使用,表 ...
- Win10提示无法创建新的分区也找不到现有的分区解法
原文链接:https://www.pconline.com.cn/win10/1126/11261093.html 1.格式化整个硬盘,重新分区 如果你的硬盘上没有重要数据的话,到了分区这一步时,将硬 ...
- C/C++ assert()函数用法总结
1. 简介 assert宏的原型定义在<assert.h>中,其作用是如果它的条件返回错误,则终止程序执行. 原型定义: #include <assert.h>void ass ...
- HBSX2019 3月训练
Day 1 3月有31天废话 今天先颓过了就只剩30天了 初步计划 每天一道字符串/数据结构题 图论学习 根据<若干图论模型探讨>(lyd)复习 二分图与网络流学习 <算法竞赛进阶指 ...
- Python open() 函数
open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=T) 模式 描述 r 以只读方 ...