该系统账户处理全部使用ArrayList(动态数组)金额 账户信息等放在Count类里进行处理运算
主要功能:存款取款转账信息查询 账户功能:
注册账户登录账户 主函数
public static void main(String args[])
{
ArrayList countArrayList=new ArrayList<>();
String User;
String passWord;
String name;
while(true)
{ Scanner input = new Scanner(System.in);
int button=mainView(input);
boolean flag=true;
switch(button)
{ case 1:
System.out.println("请输入用户名:");
User = input.next(); //登录输入用户名
System.out.println("请输入密码:");
passWord = input.next(); //登录输入密码
if(SystemLog(countArrayList,User,passWord))
{
int button1 =SecondView(input);
while(flag)
{if(button1==1)
{ query(countArrayList,User);
button1 =SecondView(input);
}
else if(button1==2)
{getMoney(countArrayList,User,input);
button1 =SecondView(input);
}
else if(button1==3)
{ deposit(countArrayList,User,input);
button1 =SecondView(input);
}
else if(button1==4)
{
transfer(countArrayList,User,input);
button1 =SecondView(input);
}
else if(button1==5)
{
break;
}
}
}
break;
case 2:
System.out.println("请输入用户名:");
User = input.next(); //登录输入用户名
System.out.println("请输入密码:");
passWord = input.next(); //登录输入密码
System.out.println("请输入您的姓名:");
name= input.next(); //登录输入密码
enroll(countArrayList,User,passWord,name);
break;
default: System.out.println("您输入的操作不存在");
break;
}
}
}
该项目分为两个界面
主界面 mainView 展示账户操作
public static int mainView(Scanner input)
{
System.out.println("===========欢迎进入ATM系统=============");
System.out.println("1.登录账户");
System.out.println("2.注册账户");
System.out.println("请选择您要进行的操作");
int button = input.nextInt();
return button;
}
副界面 SecondView 展示ATM内部操作
public static int SecondView(Scanner input)
{
boolean flag= true;
int b=0;
while (flag)
{
System.out.println("====================================");
System.out.println("1.查询账户信息");
System.out.println("2.取款");
System.out.println("3.存款");
System.out.println("4.转账");
System.out.println("5.退出当前账户");
System.out.println("请选择您要进行的操作");
int button = input.nextInt();
switch (button)
{
case 1:
case 2:
case 3:
case 4:
case 5:
flag = false;
return b=button;
default:
System.out.println("您输入的操作不存在");
break;
}
}
return b;
}
系统登录
public static boolean SystemLog(ArrayListcountArrayList,String User,String passWord) { boolean flag=false; Scanner input = new Scanner(System.in);Count tempCount = new Count(); if(countArrayList.size()!=0) { for(int i=0;i 系统注册 public static boolean enroll(ArrayList查询功能单独编写 以便后续调用countArrayList,String User,String passWord,String name) { boolean flag=false; Scanner input = new Scanner(System.in); Count tempCount = new Count(); tempCount.setUserName(User); tempCount.setPassWord(passWord); tempCount.setName(name); countArrayList.add(tempCount); return true; } public static void query(ArrayListcountArrayList,String User) { int f = 0; Count tempCount = new Count(); for(int i=0;i 取款功能 public static void getMoney(ArrayList存款功能countArrayList,String User,Scanner input) { System.out.println("请输入取款金额:"); int takeNumber=input.nextInt(); Count tempCount = new Count(); for(int i=0;i =takeNumber) { tempCount.setMoney(tempCount.getMoney()-takeNumber); } else { System.out.println("取款失败,金额不足!!!"); } } } } public static void deposit(ArrayListcountArrayList,String User,Scanner input) { int p=-1; System.out.println("请输入存款金额:"); int depositNumber=input.nextInt(); Count tempCount=new Count(); for(int i=0;i 转账功能 public static void transfer(ArrayListcountArrayList,String User,Scanner input) { int p=0; int w=0; System.out.println("请您输入对方的用户名:"); String aimUser = input.next(); System.out.println("请输入转账金额:"); int depositNumber=input.nextInt(); Count tempCount = new Count(); Count aimTempCount = new Count(); Count aimCount = new Count(); for(int i=0;i tempCount.getMoney()) { System.out.println("余额不足,转账失败!!"); } else if(depositNumber<=tempCount.getMoney()) { tempCount.setMoney(tempCount.getMoney()-depositNumber); aimTempCount.setMoney(aimTempCount.getMoney()+depositNumber); System.out.println("转账成功!!!"); } } }


![[学习记录] Java ATM系统 [学习记录] Java ATM系统](http://www.mshxw.com/aiimages/31/778451.png)
