时间:2021-05-20
本文实例为大家分享了Java实现模拟ATM机的具体代码,供大家参考,具体内容如下
项目名称
模拟ATM机
项目描述
简单实现ATM机功能
代码实现
测试类
public class Test { //模拟多功能ATM机 public static void main(String[] args) { ATM atm = new ATM(); atm.opearte(); }}主类:实现主方法
public class ATM { private Bank bank; public ATM(){ bank = new Bank(); } private void success(BankCard bankCard) { while (true) { System.out.println("请选择:1、查询余额,2、取款,3、存款,4、转账,5、退卡"); Scanner scanner = new Scanner(System.in); int choice = scanner.nextInt(); if (choice == 5) { return; } switch (choice) { case 1: int money = bank.printf(bankCard); System.out.println("余额:" + money); break; case 2: System.out.println("请输入取款金额:"); money = scanner.nextInt(); bankCard.withdraw(money); break; case 3: System.out.println("请输入存款金额:"); money = scanner.nextInt(); bankCard.deposit(money); break; case 4: System.out.println("请输入对方账户id:"); int id = scanner.nextInt(); BankCard card = bank.transfer(id); if(card != null){ System.out.println("请输入转账金额:"); money = scanner.nextInt(); if(money <= bankCard.getMoney()){ bankCard.withdraw(money); card.deposit(money); }else { System.out.println("转账失败"); } }else { System.out.println("未找到该账户"); } break; default: } } } private void login(){ //登录 System.out.println("请输入账号,密码"); Scanner scanner = new Scanner(System.in); int id = scanner.nextInt(); int password = scanner.nextInt(); BankCard bankCard = bank.search(id,password); if(bankCard != null){ System.out.println("登录成功"); success(bankCard); }else { System.out.println("登录失败,请注册"); } } private void register(){ //注册 System.out.println("请输入账号,密码"); Scanner scanner = new Scanner(System.in); int id = scanner.nextInt(); int password = scanner.nextInt(); BankCard bankCard = bank.search(id,password); if(bankCard != null){ System.out.println("该账号已存在,请直接登录"); }else { bank.addcard(id,password); System.out.println("注册成功"); } } public void opearte() { while (true) { System.out.println("请选择:1、登录,2、注册,3、退出"); Scanner scanner = new Scanner(System.in); int choice = scanner.nextInt(); if (choice == 3) { return; } switch (choice) { case 1: login(); break; case 2: register(); break; default: } } }}银行类:一个银行对应多个ATM机
public class Bank { private BankCard[] bankCards; private final int INITSIZE = 10; private int size; public Bank(){ bankCards = new BankCard[INITSIZE]; size = 0; } public BankCard search(int id,int password){ //搜索 BankCard[] bankCard = bankCards; for(int i=0;i<size;i++){ if(bankCards[i].getId() == id && bankCards[i].getPassword() == password){ return bankCard[i]; } } return null; } public void addcard(int id,int password){ //注册 BankCard bankCard = new BankCard(id, password); if (size == bankCards.length){ bankCards = Arrays.copyOf(bankCards,bankCards.length * 2); } bankCards[size++] = bankCard; } public int printf(BankCard bankCard){ //显示余额 return bankCard.getMoney(); } public BankCard transfer(int id){ for(int i=0;i<size;i++){ if(bankCards[i].getId() == id){ return bankCards[i]; } } return null; }}银行卡类:不同账户的操作
public class BankCard { private int id; private int password; private int money; private int size = 0; public BankCard(int id,int password){ this.id = id; this.password = password; money = 0; } public int getId(){ return id; } public int getPassword(){ return password; } public int getMoney(){ return money; } public void withdraw(int money){ //取款 if(this.money >= money){ this.money -= money; }else { System.out.println("取款失败"); } } public void deposit(int money){ //存款 this.money += money; }}以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
Java模拟ATM机,供大家参考,具体内容如下实现登录,查询,转账,取款,修改密码,退出功能。源码packagebank;importjava.io.*;imp
java实现银行ATM自助取款机,实现功能:用户登录、余额查询、存钱、取钱、转账、修改密码、退出系统。用java实现一个ATM机系统(2.0版)设计思路设计五个
本文实例讲述了Java使用嵌套循环模拟ATM机取款业务操作。分享给大家供大家参考,具体如下:代码:packagecom.jredu.ch03;importjav
用Java模拟一个银行ATM系统,供大家参考,具体内容如下系统功能介绍:使用面向对象的编程思想,尽可能模拟真实世界中的银行ATM业务流程。main方法里通过调用
本文实例为大家分享了java模拟ATM功能的具体代码,供大家参考,具体内容如下有三个类:Test.java、Customer.java、CustomerDAO.