java基础简单实现atm机,用Java实现简单银行系统
本文实例为大家分享了爪哇岛实现简单银行异步传输模式系统的具体代码,供大家参考,具体内容如下
#ATM系统
##功能
模拟银行异步传输模式机系统,具有注册、登录功能用户登录后可实现以下功能:1)存款2)取款3)转账4)查询5)退出
##设计思路
首先,要进行异步传输模式机操作应该具有银行卡和自动取款机,所以我们要设计一个异步传输模式类和银行卡类,自动柜员机具有存取款等操作,银行卡用来记录用户存取款等操作后的越,其次因为异步传输模式同时为多个用户服务,所以我们应该识别每张卡,这里增加一个银行类来记录银行卡个数以及各个用户持有哪些银行卡。
##具体代码
# # #银行类
导入Java。util。数组;/* * * * @作者: ZL * @日期22:30 2020/10/9 */公类银行{私类银行卡[]卡;私有(同Internationalorganizations)国际组织大小;//有效用户个数private static final int INITSIZE=10;public Bank(){ this(INITSIZE);}公共银行(int num){ cards=new银行卡[数字];} public boolean add(银行卡){//如果注册过,增加失败如果(包含(card.getID(),card.getPasswd())!=null){返回false} if(size==cards。长度){卡片=数组。(卡片、卡片)的复印件。长度1);//长度不够时进行扩容}卡片[大小]=卡片;//返回真实}公共布尔搜索(整数id,整数密码){//查询是否存在这张卡布尔k=真;for(int I=0;isizei ){ if((卡[我].getID()==id)(cards[i].getPasswd()==passwd)){ k=true;} else k=false}返回k;}公共银行卡包含(整数id,整数密码){//查询并返回这张卡银行卡=空;for(int I=0;isizei ){ if((卡[我].getID()==id)(cards[i].get passwd()==passwd)){ card=cards[I];打破;} }回卡;} } # # #银行卡类
导入Java。util。扫描仪;公共类银行卡{私有int id私有int密码公共int money=0;公共银行卡(int id,int passwd){ this。id=idthis . passwd=passwd } public int getID(){ return this。id;} public int get passwd(){返回此。passwd} /** * 存款*/public void存钱(int money){ this。钱=钱;} /** * 取款*/public布尔值retract(int money){ boolean flag=false;如果(这个。钱=钱){这个。钱-=钱;flag=true}返回标志;} /** * 返回余额* @返回
*/ public int getMoney(){ return this.money; }}###ATM类
import java.util.Scanner;import src3.BankCard;public class ATM { private Bank bank; private static Scanner scanner; public ATM(){ bank = new Bank(); scanner = new Scanner(System.in); } public void start(){ while (true) { System.out.println("1. 登陆 2.注册 3.关机"); int chioce = scanner.nextInt(); if (chioce == 3) { break; } System.out.println("请输入账号密码"); int id = scanner.nextInt(); int passwd = scanner.nextInt(); BankCard successCard = null; switch (chioce){ case 1: successCard = login(id,passwd); if(successCard != null){ System.out.println("登陆成功"); loginSuccess(successCard); }else{ System.out.println("登陆失败"); } break; case 2: if(regiter(id,passwd)){ System.out.println("注册成功"); }else{ System.out.println("注册失败"); } break; } } } private void loginSuccess(BankCard successCard){ while (true) { System.out.println("1. 存款 2.取款 3.转账 4.余额 5.退卡"); int chioce = scanner.nextInt(); if (chioce == 5) { break; } switch (chioce) { case 1: System.out.println("请输入存款金额"); int money = scanner.nextInt(); successCard.saveMoney(money); System.out.println("存款成功"); break; case 2: System.out.println("请输入取款金额"); money = scanner.nextInt(); if (successCard.withDraw(money)) { System.out.println("取款成功"); } else { System.out.println("取款失败"); } break; case 3: System.out.println("请输入转账金额"); money = scanner.nextInt(); System.out.println("请输入转账用户账号,密码"); int id = scanner.nextInt(); int passwd = scanner.nextInt(); BankCard userCard = bank.contains(id, passwd); if (userCard != null) { if (successCard.withDraw(money)) {// 当前卡取款成功 userCard.saveMoney(money); System.out.println("转账成功"); } else { System.out.println("余额不足"); } } else { System.out.println("没有此用户"); } break; case 4: System.out.println("余额:" + successCard.getMoney()); break; } } } private boolean regiter(int id,int passwd){ BankCard card = new BankCard(id,passwd); return bank.add(card); } private BankCard login(int id,int passwd){ return bank.contains(id,passwd); }}
###测试类
public class TestDemo { public static void main(String[] args) { ATM atm = new ATM(); atm.start(); }}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持盛行IT。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。