简单分为三个类:用户类User,实现类Main(用来实例化Atm实现其方法),Atm(命名随意)
主要功能方法代码写在Atm类中,这里附上该类代码,用户类属性三个id passWord money,
登录、注册、验证码、菜单表较为简单就不附上了
构造函数附上
private ArrayList<User> arrayList; private User nowUser;//这里设置一个当前客户 Scanner scanner ; public Atm(){ this.arrayList=new ArrayList<User>(); this.scanner=new Scanner(System.in); this.nowUser=nowUser; }
这里主要附上存钱与转账,取钱跟转账代码有部分重合就不放上去了
//存钱 void saveMoney() { System.out.print("请输入存款金额:"); double money = scanner.nextInt(); nowUser.setMoney((int) (money+nowUser.getMoney())); System.out.println("存款成功,当前账户有存款"+nowUser.getMoney()); } //转账 void moveMoney(){ System.out.print("请输入金额:"); double moveMoney = scanner.nextDouble(); double nowMoney =nowUser.getMoney();//现在自身账户金额 System.out.print("请输入转账用户id:"); String moveUserId=scanner.next(); int overCheck=-1; for (int i=0;i<arrayList.size();i++){//遍历查询 if(arrayList.get(i).getId().equals(moveUserId)){//根据id查询 overCheck=i; if(nowMoney-moveMoney>=0){ double money=nowUser.setMoney((int) (nowMoney-moveMoney));//自身账户资金扣除 System.out.println("你当前账户余额为"+money); arrayList.get(i).setMoney((int) (arrayList.get(i).getMoney()+moveMoney));//目标账户资金增加 System.out.println("已成功转账"); }else { System.out.println("余额不足转账失败,请充值!!!"); } } } if(overCheck==-1){ System.out.println("失败"); } }