JAVA 小程序之ATM
一个JAVA的小程序,主要要求有模块化编程的思想,能够把ATM中各个功能独立成为一个一个的方法。
ATM主要功能有:
- 查询余额;
- 取款;
- 存款;
- 修改密码;
- 退出。
以上功能均由独立的方法给出,具体实现过程如下:
import java.util.Scanner; /**
*
* ATM机
* */
public class HomeWork0901 { static float money=100000f; public static void main(String[] args) {
// TODO Auto-generated method stub
String account="mmy123";
String password="mmy12311";
welcome();
boolean check=LogCheck(account,password);
if(check){
do{
System.out.println("请选择你希望执行的操作:\n1:查询余额 2:存款 3:取款 4:修改密码 5:退出");
Scanner sr=new Scanner(System.in);
int option=sr.nextInt();
switch(option){
case :check(money);break;
case :money+=deposit();break;
case :money-=MoneyOut();break;
case :password=changePassword(password);break;
case :System.out.println("成功退出!欢迎再次光临!");System.exit();
}
}while(true);
}
} /**
* 欢迎界面
* */
public static void welcome(){
System.out.println("--------------------------------------------------");
System.out.println("--------------------欢迎光临---------------------");
System.out.println("--------------------------------------------------");
System.out.println("--------------------我的银行---------------------");
System.out.println("--------------------------------------------------");
System.out.println("------------------欢迎来存钱--------------------");
System.out.println("--------------------------------------------------");
} /**
* 登录账号密码输入及检验
* */
public static boolean LogCheck(String account,String password){
for(int i=;i>;i--){
System.out.println("输入你的账号:");
Scanner sr=new Scanner(System.in);
String input_acc=sr.next();
System.out.println("输入你的密码:");
String input_password=sr.next();
// if(account!=input_acc||password!=input_password){ //匹配字符串不能用==!!!
if(!account.equals(input_acc)||!password.equals(input_password)){
if(i==){
System.out.println("机会用完,吞卡!");
return false;
}
System.out.println("账号密码错误!你还有"+(i-)+"次输入机会!");
continue;
}else{
System.out.println("登陆成功,欢迎!");
break;
}
}
return true;
} /**
* 查询
* */
public static void check(float money){
System.out.println("您的账户共有"+money+"元!");
} /**
* 存款
* */
public static int deposit(){
System.out.println("请输入所存金额:");
Scanner sr=new Scanner(System.in);
int MoneyIn=sr.nextInt();
if(MoneyIn%!=){
System.out.println("只能存100的整数!");
return ;
}
if(MoneyIn>){
System.out.println("单笔存款上限为5000!");
return ;
}
if(MoneyIn<){
System.out.println("输正数!输正数!输正数!");
return ;
}
System.out.println("存款成功!");
return MoneyIn;
} /**
* 取款
* */
public static int MoneyOut(){
System.out.println("请输入需要取款的金额:");
Scanner sr=new Scanner(System.in);
int MoneyOut=sr.nextInt();
if(MoneyOut%!=){
System.out.println("请输入整数!");
return ;
}
if(MoneyOut>money){
System.out.println("所取金额超过该账户余额!");
return ;
}
if(MoneyOut<){
System.out.println("输正数!输正数!输正数!");
return ;
}
System.out.println("取款成功!");
return MoneyOut;
} /**
* 修改密码
* */
public static String changePassword(String pass){
System.out.println("请输入旧密码:");
Scanner sr=new Scanner(System.in);
String password=sr.next();
if(password.equals(pass)){
System.out.println("请输入新密码:");
String newpass1=sr.next();
System.out.println("请再次输入新密码:");
String newpass2=sr.next();
if(newpass1.equals(newpass2)){
System.out.println("密码修改成功!");
return newpass1;
}else{
System.out.println("两次密码不一致!");
return pass;
}
}else{
System.out.println("旧密码输入错误!");
return pass;
}
}
}
JAVA真有意思啊!!!
JAVA 小程序之ATM的更多相关文章
- 简单的小程序实现ATM机操作
简单的小程序实现ATM机操作 代码如下: package Day06; import java.util.Scanner; public class TestAccount { public stat ...
- 输出多行字符的一个简单JAVA小程序
public class JAVA { public static void main(String[] args) { System.out.println("-------------- ...
- 浏览器兼容java小程序配置说明
最近在使用的一个web应用系统是内嵌了java小程序,遇到了各种浏览器兼容性问题,现梳理如下: 1.通过以下链接检测当前电脑是否已经安装有java https://java.com/zh_CN/dow ...
- 框架一般用作Java应用程序的窗口,而Applet是Java小程序的窗口
框架一般用作Java应用程序的窗口,而Applet是Java小程序的窗口. 与Frame不同,Applet是在网页中显示的,也可以通过添加Panel进行组件布局. package TomAwt; im ...
- 【小程序分享篇 一 】开发了个JAVA小程序, 用于清除内存卡或者U盘里的垃圾文件非常有用
有一种场景, 手机内存卡空间被用光了,但又不知道哪个文件占用了太大,一个个文件夹去找又太麻烦,所以我开发了个小程序把手机所有文件(包括路径下所有层次子文件夹下的文件)进行一个排序,这样你就可以找出哪个 ...
- 2015.11.27初识java一集简单的java小程序
JAVA配置环境变量方法: 1.打开我的电脑--属性--高级--环境变量 2.新建系统变量JAVA_HOME 和CLASSPATH 变量名:JAVA_HOME变量值:D:\Java\jdk1.7.0_ ...
- java的数据类型,几个java小程序
1:求圆的面积 还好看了c++,不然直接看这课件还真是看不懂……加油吧 要从键盘读入数据可以用Scanner类的nextlnt()或者nextDouble()方法,首先创建Scanner类的一个实例, ...
- java 小程序开发PKCS7Padding 解密方法实现,以及错误Cannot find any provider supporting AES/CBC/PKCS7Padding 解决办法
近日在对接小程序API,其中wx.getUserInfo api返回的数据encryptedData 的解密算法要求为: AES-128-CBC,数据采用PKCS#7填充. 经过一番查询,得到java ...
- 首次编译Java小程序
public class helloworld { public static void main(string[] args) { system.out.println("hello wo ...
随机推荐
- C++学习_继承覆盖重载
今天通过对实验二继承,重载,覆盖的学习,让我更深一步理解了这些概念的区别. 首先来明确一个概念,函数名即地址,也就是说函数名就是个指针. 编译阶段,编译器为每个函数的代码分配一个地址空间并编译函数代码 ...
- swift不同地方 命名空间module iOS
Objective-C没有命名空间,为了避免冲突,Objective-C的类型一般都会加上两到三个字母的前缀,比如Apple保留的NS和UI前缀,各个系统框架的前缀,各个系统框架的前缀SK(Store ...
- cmanformat - 不是命令啦,是个演示文件
描述 DESCRIPTION cmanformat 是 man pages 格式的演示文件. 由于系统不同会有差异.在 XWindow 下会好些. __________________________ ...
- 关于 <script type='text/template' > 的妙用 / 使用jquery获取iframe加载完成事件
https://www.cnblogs.com/ddqyc/p/6200539.html <!DOCTYPE html> <html> <head> <met ...
- Discuz!代码
我如何使用Discuz!代码 Discuz!代码 效果 [b]粗体文字 Abc[/b] 粗体文字 Abc [i]斜体文字 Abc[/i] 斜体文字 Abc [u]下划线文字 Abc[/u] 下划线 ...
- CAD交互绘制文字(com接口)
在cad设计时,需要绘制文字,用户可以设置设置绘制文字的高度等属性. 主要用到函数说明: _DMxDrawX::DrawText 绘制一个单行文字.详细说明如下: 参数 说明 DOUBLE dPosX ...
- vue解决IOS10低版本白屏问题
一.方案一 在build文件的webpack.prod.conf.js文件添加以下代码 new UglifyJsPlugin({ uglifyOptions: { compress: { warnin ...
- viewstate 与 session 区别
Session存在于服务器端可以跨页面.耗费服务器资源.ViewState载体是页面文件,消耗带宽. EG: viewstate是存储在客户端的隐藏信息,当服务器接受请求回传时可以将viewstate ...
- 变量加.self
self相当于java里面的this,表示类的对象本身.加个self.是为了调用对应的set方法,如果不加,就不调用,不掉用就会造成引用计数的retainCount不加一,不加一就会被直接释放,结果就 ...
- 笔试算法题(50):简介 - 广度优先 & 深度优先 & 最小生成树算法
广度优先搜索&深度优先搜索(Breadth First Search & Depth First Search) BFS优缺点: 同一层的所有节点都会加入队列,所以耗用大量空间: 仅能 ...