日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

java程序模拟atm机_Java项目实现模拟ATM机

發(fā)布時間:2024/8/23 java 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java程序模拟atm机_Java项目实现模拟ATM机 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

本文實例為大家分享了Java實現(xiàn)模擬ATM機的具體代碼,供大家參考,具體內容如下

項目名稱

模擬ATM機

項目描述

簡單實現(xiàn)ATM機功能

代碼實現(xiàn)

測試類

public class Test {

//模擬多功能ATM機

public static void main(String[] args) {

ATM atm = new ATM();

atm.opearte();

}

}

主類:實現(xiàn)主方法

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

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

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;

}

}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持云海天教程。

原文鏈接:https://blog.csdn.net/Sampson_S/article/details/105166915

總結

以上是生活随笔為你收集整理的java程序模拟atm机_Java项目实现模拟ATM机的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。