ATM模拟实现(不完善)
package ATM;
import javax.swing.JOptionPane;
public class day7ClassATM {
//静态全局变量
static int featchMoney = Integer.parseInt(JOptionPane.showInputDialog(null,"请输入要存入的金额:"));
public static void main(String[] args) {
// TODO Auto-generated method stub
String[] user = new String[10];
int[] pwd = new int[10];
while (true){
String input = JOptionPane.showInputDialog(null,"#####欢迎来到ATM#####\n请选择菜单:\nA.开户\nB.登录\nC.退出\nD.修改密码");
char opt = input.toCharArray()[0];
switch (opt){
case 'A':
register(user,pwd);
JOptionPane.showMessageDialog(null,"恭喜你注册成功!");
break;
case 'B':
login(user,pwd);
break;
case 'C':
JOptionPane.showMessageDialog(null, "退出系统");
System.exit(-1);
break;
case 'D':
updatePassword(user,pwd);
JOptionPane.showMessageDialog(null,"恭喜你修改密码成功!");
break;
default:
JOptionPane.showMessageDialog(null, "输入有误,请重新选择");
}
}
}
//注册
static void register(String[] user,int[] password){
String username = JOptionPane.showInputDialog(null,"请输入要注册的用户名:");
int pwd = Integer.parseInt(JOptionPane.showInputDialog(null,"请输入要注册的用户名密码:"));
for (int i=0; i<user.length; i++){
if (user[i] == null){
user[i] = username;
password[i] = pwd;
break;
}
}
}
//登录
static void login(String[] user,int[] password){
String username = JOptionPane.showInputDialog(null,"请输入用户名:");
int pwd = Integer.parseInt(JOptionPane.showInputDialog(null,"请输入密码:"));
boolean flag = false;
for (int i=0; i<user.length; i++){
if (username.equals(user[i]) && pwd == password[i]){
JOptionPane.showMessageDialog(null,"恭喜你登陆成功!");
menu(username);
flag = true;
break;
}
}
if (flag == false)
JOptionPane.showMessageDialog(null, "登录失败");
}
//修改密码
static void updatePassword(String[] user,int[] password){
String name = JOptionPane.showInputDialog(null,"请输入要修改密码的用户名:");
for (int i=0; i<user.length; i++){
if (name.equals(user[i]))
password[i] = Integer.parseInt(JOptionPane.showInputDialog(null,"请输入要修改用户名的密码:"));
}
}
static void menu(String user){//菜單
JOptionPane.showMessageDialog(null, "#####你好!"+user+"欢迎来到ATM#####");
while (true){
String input = JOptionPane.showInputDialog(null,"请选择菜单:\nA.存款\nB.取款\nC.转账\nD.查询账户余额\nE.返回主菜单");
char opt = input.toCharArray()[0];
boolean flag = false;
int[] total = new int[10];//初始化用户金额为0
switch(opt){
case 'A':
saveMoney(total);//存款
break;
case 'B':
getMoney(total);//取款
break;
case 'C':
transAccount();//转账
break;
case 'D':
JOptionPane.showMessageDialog(null,"账户余额为:"+queryMoney(total));//查询账户余额
break;
case 'E':
flag = true;
break;
default:
JOptionPane.showMessageDialog(null, "输入有误!");
}
if (flag == true)
break;
}
}
static int saveMoney(int[] money){//存款
for (int i=0; i<money.length; i++){
money[i] = featchMoney;
break;
}
JOptionPane.showMessageDialog(null,"恭喜你存入了"+featchMoney+"¥");
return money[0];
}
static void getMoney(int[] money){//取款
//int sum = saveMoney(money);
String input = JOptionPane.showInputDialog(null,"取款菜单:\nA.100\nB.200\nC.300\nD.500\nE.1000\nF.2000\nG.其他金额\n");
char opt = input.toCharArray()[0];
if (featchMoney >=100){
switch(opt){
case 'A':
featchMoney -= 100;
JOptionPane.showMessageDialog(null,"余额为:"+featchMoney);
break;
case 'B':
featchMoney -= 200;
JOptionPane.showMessageDialog(null,"余额为:"+featchMoney);
break;
case 'C':
featchMoney -= 300;
JOptionPane.showMessageDialog(null,"余额为:"+featchMoney);
break;
case 'D':
featchMoney -= 500;
JOptionPane.showMessageDialog(null,"余额为:"+featchMoney);
break;
case 'E':
featchMoney -= 1000;
JOptionPane.showMessageDialog(null,"余额为:"+featchMoney);
break;
case 'F':
featchMoney -= 2000;
JOptionPane.showMessageDialog(null,"余额为:"+featchMoney);
break;
case 'G':
int num = Integer.parseInt(JOptionPane.showInputDialog(null,"请输入其他金额:"));
featchMoney -= num;
JOptionPane.showMessageDialog(null,"余额为:"+featchMoney);
break;
default:
JOptionPane.showMessageDialog(null,"输入金额不对");
break;
}
}
else
JOptionPane.showMessageDialog(null,"余额不足,请及时充值再来取款");
}
static void transAccount(){//转账
//user[1] = JOptionPane.showInputDialog(null,"请输入要转账的用户名:");
int money = Integer.parseInt(JOptionPane.showInputDialog(null,"请输入转账金额:"));
if (money%100==0)
featchMoney -= money;
JOptionPane.showMessageDialog(null,"恭喜你转账成功"+money+"¥");
}
static int queryMoney(int[] money){//查询余额
return featchMoney;
}
}