一个JAVA的小程序,主要要求有模块化编程的思想,能够把ATM中各个功能独立成为一个一个的方法。

ATM主要功能有:

  1. 查询余额;
  2. 取款;
  3. 存款;
  4. 修改密码;
  5. 退出。

以上功能均由独立的方法给出,具体实现过程如下:

 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的更多相关文章

  1. 简单的小程序实现ATM机操作

    简单的小程序实现ATM机操作 代码如下: package Day06; import java.util.Scanner; public class TestAccount { public stat ...

  2. 输出多行字符的一个简单JAVA小程序

    public class JAVA { public static void main(String[] args) { System.out.println("-------------- ...

  3. 浏览器兼容java小程序配置说明

    最近在使用的一个web应用系统是内嵌了java小程序,遇到了各种浏览器兼容性问题,现梳理如下: 1.通过以下链接检测当前电脑是否已经安装有java https://java.com/zh_CN/dow ...

  4. 框架一般用作Java应用程序的窗口,而Applet是Java小程序的窗口

    框架一般用作Java应用程序的窗口,而Applet是Java小程序的窗口. 与Frame不同,Applet是在网页中显示的,也可以通过添加Panel进行组件布局. package TomAwt; im ...

  5. 【小程序分享篇 一 】开发了个JAVA小程序, 用于清除内存卡或者U盘里的垃圾文件非常有用

    有一种场景, 手机内存卡空间被用光了,但又不知道哪个文件占用了太大,一个个文件夹去找又太麻烦,所以我开发了个小程序把手机所有文件(包括路径下所有层次子文件夹下的文件)进行一个排序,这样你就可以找出哪个 ...

  6. 2015.11.27初识java一集简单的java小程序

    JAVA配置环境变量方法: 1.打开我的电脑--属性--高级--环境变量 2.新建系统变量JAVA_HOME 和CLASSPATH 变量名:JAVA_HOME变量值:D:\Java\jdk1.7.0_ ...

  7. java的数据类型,几个java小程序

    1:求圆的面积 还好看了c++,不然直接看这课件还真是看不懂……加油吧 要从键盘读入数据可以用Scanner类的nextlnt()或者nextDouble()方法,首先创建Scanner类的一个实例, ...

  8. java 小程序开发PKCS7Padding 解密方法实现,以及错误Cannot find any provider supporting AES/CBC/PKCS7Padding 解决办法

    近日在对接小程序API,其中wx.getUserInfo api返回的数据encryptedData 的解密算法要求为: AES-128-CBC,数据采用PKCS#7填充. 经过一番查询,得到java ...

  9. 首次编译Java小程序

    public class helloworld { public static void main(string[] args) { system.out.println("hello wo ...

随机推荐

  1. C++学习_继承覆盖重载

    今天通过对实验二继承,重载,覆盖的学习,让我更深一步理解了这些概念的区别. 首先来明确一个概念,函数名即地址,也就是说函数名就是个指针. 编译阶段,编译器为每个函数的代码分配一个地址空间并编译函数代码 ...

  2. swift不同地方 命名空间module iOS

    Objective-C没有命名空间,为了避免冲突,Objective-C的类型一般都会加上两到三个字母的前缀,比如Apple保留的NS和UI前缀,各个系统框架的前缀,各个系统框架的前缀SK(Store ...

  3. cmanformat - 不是命令啦,是个演示文件

    描述 DESCRIPTION cmanformat 是 man pages 格式的演示文件. 由于系统不同会有差异.在 XWindow 下会好些. __________________________ ...

  4. 关于 <script type='text/template' > 的妙用 / 使用jquery获取iframe加载完成事件

    https://www.cnblogs.com/ddqyc/p/6200539.html <!DOCTYPE html> <html> <head> <met ...

  5. Discuz!代码

    我如何使用Discuz!代码   Discuz!代码 效果 [b]粗体文字 Abc[/b] 粗体文字 Abc [i]斜体文字 Abc[/i] 斜体文字 Abc [u]下划线文字 Abc[/u] 下划线 ...

  6. CAD交互绘制文字(com接口)

    在cad设计时,需要绘制文字,用户可以设置设置绘制文字的高度等属性. 主要用到函数说明: _DMxDrawX::DrawText 绘制一个单行文字.详细说明如下: 参数 说明 DOUBLE dPosX ...

  7. vue解决IOS10低版本白屏问题

    一.方案一 在build文件的webpack.prod.conf.js文件添加以下代码 new UglifyJsPlugin({ uglifyOptions: { compress: { warnin ...

  8. viewstate 与 session 区别

    Session存在于服务器端可以跨页面.耗费服务器资源.ViewState载体是页面文件,消耗带宽. EG: viewstate是存储在客户端的隐藏信息,当服务器接受请求回传时可以将viewstate ...

  9. 变量加.self

    self相当于java里面的this,表示类的对象本身.加个self.是为了调用对应的set方法,如果不加,就不调用,不掉用就会造成引用计数的retainCount不加一,不加一就会被直接释放,结果就 ...

  10. 笔试算法题(50):简介 - 广度优先 & 深度优先 & 最小生成树算法

    广度优先搜索&深度优先搜索(Breadth First Search & Depth First Search) BFS优缺点: 同一层的所有节点都会加入队列,所以耗用大量空间: 仅能 ...