📅  最后修改于: 2023-12-03 15:26:19.824000             🧑  作者: Mango
这个 Java 程序是用来模拟 ATM 交易场景的,可以显示用户的账户余额和进行取款、存款等交易操作。下面是程序代码和详细介绍:
import java.util.Scanner;
public class ATM {
private float balance;
public ATM(float balance) {
this.balance = balance;
}
public float getBalance() {
return balance;
}
public void deposit(float amount) {
balance += amount;
System.out.println("Deposit successful. New balance: " + balance);
}
public void withdraw(float amount) {
if (balance < amount) {
System.out.println("Insufficient balance.");
} else {
balance -= amount;
System.out.println("Withdrawal successful. New balance: " + balance);
}
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// Initialize the ATM with a balance of 1000
ATM atm = new ATM(1000);
while (true) {
System.out.println("Current balance: " + atm.getBalance());
System.out.println("1. Deposit");
System.out.println("2. Withdraw");
System.out.println("3. Quit");
int choice = scanner.nextInt();
switch (choice) {
case 1:
System.out.println("Enter amount to deposit:");
float depositAmount = scanner.nextFloat();
atm.deposit(depositAmount);
break;
case 2:
System.out.println("Enter amount to withdraw:");
float withdrawAmount = scanner.nextFloat();
atm.withdraw(withdrawAmount);
break;
case 3:
System.out.println("Thank you for using our ATM.");
return;
default:
System.out.println("Invalid choice.");
}
}
}
}
这个 Java 程序使用了面向对象的编程方法,将 ATM 对象封装在类中。程序初始化时会创建一个 ATM 对象,并将初始余额设为 1000,然后进入一个循环中,等待用户输入交易类型。
用户可以进行存款、取款和退出操作。如果用户进行存款操作,程序会将输入的数值加到余额中,并在控制台显示新的余额。如果用户进行取款操作,程序会先判断余额是否足够,不足则提示“余额不足”,足够则将取款金额从余额中扣除,并在控制台显示新的余额。
程序通过 Scanner 类实现用户输入,并使用 switch 语句来处理不同的交互类型。如果用户输入不合法,则提示“无效选项”。
程序通过封装 ATM 对象在类中,简化了调用接口和实现方法的步骤,提高了代码的可重用性和可维护性。同时,程序通过用户输入和控制台输出,让用户可以方便地输入交易类型、金额和查看余额,并得到及时的交易反馈信息。这个 Java 程序是一个基础的面向对象编程练手项目,可以帮助初学者加强对面向对象编程思想和 Java 语言特性的理解。