设计一个ATM自动取款机系统。
要求如下:实现欢迎界面、登录、存款、取款、查询、修改密码功能。
/**
*@author Ben1002
*@version jdk1.8.0_131
*/
package it.atm;
import java.util.Scanner;
public class atm_sys {
private static int userCard=10000,userPwd = 10000;//定义一个卡号和密码为10000的账户
static Scanner input= new Scanner(System.in);
public static void main(String[] args) {
welcome();//进入欢迎界面
}
//欢迎界面
public static void welcome(){
System.out.println("* * * * * * * * * * * * * * * * * * * * * * * * * *");
System.out.println("\t\t欢迎登陆ATM自动取款机系统");
System.out.println("* * * * * * * * * * * * * * * * * * * * * * * * * *");
login();//进入登录界面
}
//登录界面
public static void login() {
while(true) {
System.out.println("请输入卡号:");
int loginCard = input.nextInt();
if(loginCard !=userCard) {
System.out.println("登陆失败,账号错误请重新输入");
}
else {
while(true) {
System.out.println("请输入登录密码:");
int loginPwd = input.nextInt();
if(loginPwd == userPwd) {
System.out.println("登录成功");
operatechoice();//进入业务选择界面
return;
}
else {
System.out.println("登录失败,密码错误请重新输入");
}
}
}
}
}
static int money = 10000;//定义账户余额
//业务选择界面
public static void operatechoice( ) {
while (true) {
System.out.println("* * * * * * * * * * * * * * * * * * * * * * * * * *");
System.out.println("\t1.存款");
System.out.println("\t2.取款");
System.out.println("\t3.查询");
System.out.println("\t4.修改密码");
System.out.println("\t5.退出系统");
System.out.println("* * * * * * * * * * * * * * * * * * * * * * * * * *");
System.out.println("请输入要执行的操作:");
int operate = input.nextInt();
switch(operate) {
case 1://存款
System.out.println("请输入存款金额:");
int deposit = input.nextInt();
if(deposit > 5000) {
System.out.println("单次最大存款金额为5000.0");
deposit = 0;
}else if(deposit < 0) {
System.out.println("不能存负数的钱!!");
deposit = 0;
}else if(deposit % 100 != 0) {
System.out.println("不能存零钱");
}else {
System.out.println("存款成功!");
int count1 = money + deposit;
System.out.println("您的余额为:"+ count1);
money=count1;
}
break;
case 2://取款
System.out.println("请输入取款金额:");
int draw = input.nextInt();
if(draw > 5000) {
System.out.println("单次最大取款金额为5000.0");
draw = 0;
}else if(draw < 0) {
System.out.println("不能取负数的钱!!");
draw = 0;
}else if (money < draw) {
System.out.println("余额不足!!");
draw = 0;
}else if(draw % 100 != 0) {
System.out.println("不能取零钱");
}else {
System.out.println("取款成功!");
int count2 = money - draw;
money = count2;
System.out.println("余额:"+ count2);
}
break;
case 3://查询
System.out.println("您的余额为:" + money);
break;
case 4://修改密码
while(true) {
System.out.println("请输入新密码");
int newPwd = input.nextInt();
System.out.println("请再次输入新密码");
int okPwd = input.nextInt();
if(okPwd == newPwd) {
userPwd=newPwd;
System.out.println("修改成功,您的新密码是:" + userPwd);
break;
}
else{
System.out.println("两次输入的密码不一致,请重新输入");
}
}
break;
case 5://退出系统
System.out.println("已安全退出系统,感谢您的使用");
return;
default://处理前面case项没有的值
System.out.println("请输入正确的数字指令 1-5");
break;
}
}
}
}
项目截图
运行截图
代码可能有不完善的地方,欢迎大家在评论区指出。