java银行atm管理系统_java基础练习——ATM银行管理系统

1.需求说明

caa689bd39437f1873ae762279d686bc.png

2.建立属性类

package ATM;

/*

* 定义账号和密码

*/

public class ATMbean {

//定义用户名和密码

private String username = "张三";

private String password = "123";

//定义初始账余额

private double money = 5000;

public ATMbean() {

super();

}

public ATMbean(String usename, String password, double money) {

super();

this.username = usename;

this.password = password;

this.money = money;

}

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 double getMoney() {

return money;

}

public void setMoney(double money) {

this.money = money;

}

@Override

public String toString() {

return "ATMbean [username=" + username + ", password=" + password + ", money=" + money + "]";

}

}

3.实现类

package ATM;

import java.util.Scanner;

public class ATMtest {

//实例化ATMbean

ATMbean atm = new ATMbean();

Scanner s = new Scanner(System.in);

//定义一个计数器记录修改密码的次数,修改密码不得超过三次

int i = 1;

public void Select() {

//用户输入用户名和密码去和已经定义的用户名密码做比较,相同则进入系统,不相同则报错

System.out.println("==========欢迎进入ATM银行管理系统==========");

System.out.println("请输入用户名:");

String name = s.next();

System.out.println("请输入密码:");

String password = s.next();

//将用户输入的用户名和密码与系统中的用户名密码相比是否相同,相同则进入系统

if(name.equals(atm.getUsername()) && password.equals(atm.getPassword())) {

System.out.println("登录成功!");

//在此处可以进行循环

while(true) {

System.out.println("请选择需要选择的项目:1.取钱 2.存钱 3.查询余额 4.转账 5.修改密码 6.重新登录 7.退出登录");

switch(s.nextInt()) {

case 1:

//调用取钱的方法

getMoney();

break;

case 2:

//调用存钱的方法

saveMoney();

break;

case 3:

//调用查询余额的方法

selectMoney();

break;

case 4:

//调用转账的方法

zhuanzhangMoney();

break;

case 5:

//调用修改密码的方法

updateMoney();

break;

case 6:

//调用重新登录的方法,也就是调用自己

Select();

break;

case 7:

System.out.println("欢迎下次登录该系统!");

System.exit(0);

break;

default:

System.out.println("你输入有误!请重新输入!");

break;

}

}

//不相同。则报错

}else {

System.out.println("用户名或密码错误!请重新输入!");

Select();

}

}

//定义取钱的方法

public void getMoney() {

//输入取钱的金额,判断余额是否够

System.out.println("请输入取钱金额(元):");

double money = s.nextDouble();

if(money<=atm.getMoney()) {

//如果够了,则取钱,后计算余额并赋值

money = atm.getMoney() - money;

atm.setMoney(money);

System.out.println( " 取款成功!");

System.out.println(" 请取回您的现金!");

}else {

System.out.println("余额不足!");

}

}

//定义存钱的方法

public void saveMoney() {

System.out.println("请输入存钱金额:");

double money = s.nextDouble();

money = money + atm.getMoney();

atm.setMoney(money);

System.out.println("存钱成功");

}

//定义查询余额的方法

public void selectMoney() {

System.out.println("您的余额为:"+atm.getMoney()+"元");

}

//定义转账的方法

public void zhuanzhangMoney() {

System.out.println("请输入转账人账号:");

String name = s.next();

System.out.println("请输入转账金额:");

double money = s.nextDouble();

//判断转账的金额与你的余额的大小

if(money<=atm.getMoney()) {

money = atm.getMoney()-money;

atm.setMoney(money);

System.out.println("转账成功!");

}else {

System.out.println("你确定你有那么多的钱吗!");

}

}

//定义修改密码的方法

public void updateMoney() {

System.out.println("请输入原密码:");

String password = s.next();

//判断原密码是否是你输入的密码

if(password.equals(atm.getPassword())) {

System.out.println("请输入新密码:");

String newpassword = s.next();

System.out.println("请再次输入新密码:");

String newpassword01 = s.next();

//判断二次输入的密码是否相同

if(newpassword.equals(newpassword01)) {

System.out.println("修改成功!即将重新登录!");

atm.setPassword(newpassword01);

Select();

}else {

System.out.println("您输入的密码与之间的密码不相同!");

updateMoney();

}

}

//如果输入的密码不是原密码,则重新输入

else {

if(i>=3) {

System.out.println("您三次输入密码都是错的!");

System.out.println("您输入错误密码的次数超限!即将退出系统!");

System.exit(0);

}

System.out.println("您输入的密码与原密码不相同!请重新输入!");

i++;

updateMoney();

}

}

}

4.主方法   main

package ATM;

public class ATMmain {

public static void main(String[] args) {

ATMtest atm = new ATMtest();

atm.Select();

}

}

5.控制台输出结果(在此不做错误的输出,但是程序可以实现各种错误

==========欢迎进入ATM银行管理系统==========

请输入用户名:

张三

请输入密码:

123

登录成功!

请选择需要选择的项目:1.取钱 2.存钱 3.查询余额 4.转账 5.修改密码 6.重新登录 7.退出登录

1

请输入取钱金额(元):

4212

取款成功!

请取回您的现金!

请选择需要选择的项目:1.取钱 2.存钱 3.查询余额 4.转账 5.修改密码 6.重新登录 7.退出登录

2

请输入存钱金额:

3124

存钱成功

请选择需要选择的项目:1.取钱 2.存钱 3.查询余额 4.转账 5.修改密码 6.重新登录 7.退出登录

3

您的余额为:3912.0元

请选择需要选择的项目:1.取钱 2.存钱 3.查询余额 4.转账 5.修改密码 6.重新登录 7.退出登录

4

请输入转账人账号:

123

请输入转账金额:

5

转账成功!

请选择需要选择的项目:1.取钱 2.存钱 3.查询余额 4.转账 5.修改密码 6.重新登录 7.退出登录

5

请输入原密码:

123

请输入新密码:

234

请再次输入新密码:

234

修改成功!即将重新登录!

==========欢迎进入ATM银行管理系统==========

请输入用户名:

张三

请输入密码:

234

登录成功!

请选择需要选择的项目:1.取钱 2.存钱 3.查询余额 4.转账 5.修改密码 6.重新登录 7.退出登录

6

==========欢迎进入ATM银行管理系统==========

请输入用户名:

张三

请输入密码:

234

登录成功!

请选择需要选择的项目:1.取钱 2.存钱 3.查询余额 4.转账 5.修改密码 6.重新登录 7.退出登录

7

欢迎下次登录该系统!

)

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值