21xrx.com
2025-04-01 06:11:14 Tuesday
文章检索 我的文章 写文章
用Java编写ATM柜员机模拟程序
2023-06-16 11:40:39 深夜i     9     0
Java ATM柜员机 模拟程序

现代生活中,ATM柜员机已经成为了人们日常生活的一部分。为了更好地了解ATM柜员机的运作原理和设计思路,我们可以采用Java编写一个ATM柜员机模拟程序。

首先,在模拟程序中我们需要创建不同的账户,可以使用类来实现:

class Account {
 private String name;
 private int balance;
 
 public Account(String name, int balance)
  this.name = name;
  this.balance = balance;
 
 
 public int getBalance()
  return balance;
 
 
 public void deposit(int amount) {
  balance += amount;
 }
 
 public void withdraw(int amount)
  balance -= amount;
 
}

然后我们需要创建一个柜员机的类,来模拟ATM机的各种操作:

class ATM {
 private ArrayList
  accounts;
 
 private int currentUserIndex;
 
 public ATM() {
  accounts = new ArrayList<>();
  accounts.add(new Account("张三", 1000));
  accounts.add(new Account("李四", 2000));
  accounts.add(new Account("王五", 3000));
  currentUserIndex = -1;
 }
 
 public boolean login(String name) {
  for (int i = 0; i < accounts.size(); i++) {
   Account account = accounts.get(i);
   if (account.getName().equals(name))
    currentUserIndex = i;
    return true;
   
  }
  return false;
 }
 
 public boolean logout() {
  if (currentUserIndex >= 0)
   currentUserIndex = -1;
   return true;
  
  return false;
 }
 
 public boolean deposit(int amount) {
  Account account = accounts.get(currentUserIndex);
  if (account != null) {
   account.deposit(amount);
   return true;
  }
  return false;
 }
 
 public boolean withdraw(int amount) {
  Account account = accounts.get(currentUserIndex);
  if (account != null && account.getBalance() >= amount) {
   account.withdraw(amount);
   return true;
  }
  return false;
 }
}

最后,我们可以在main函数中实现模拟程序的运行,来模拟ATM柜员机的不同操作:

public static void main(String[] args) {
 ATM atm = new ATM();
 System.out.println(atm.login("张三"));
 System.out.println(atm.deposit(500));
 System.out.println(atm.withdraw(200));
 System.out.println(atm.logout());
}

三个

  
  

评论区

    相似文章
请求出错了