6-5 模拟题:设计一个BankAccount类(Java解法)(PTA)

题目描述

设计一个BankAccount类,这个类包括:

(1)一个int型的balance变量表示账户余额。

(2)一个无参数构造方法,将账户余额初始化为0。

(3)一个带一个参数的构造方法,将账户余额初始化为输入的参数。

(4)一个int型的accountNumber变量表示开户数量,每创建一个BankAccount对象就自动加1。

(5)一个getBalance()方法:返回账户余额。

(6)一个withdraw()方法:带一个int型的amount参数,从账户余额中提取amount指定的款额。
如果amount<0或者大于当前账户余额,则输出“Invalid Amount”。

(7)一个deposit()方法:带一个int型的amount参数,将amount指定的款额存储到该银行账户上。
如果amount<0,则输出“Invalid Amount”。

裁判测试程序样例:
import java.util.Scanner;
/* 请在这里填写答案 */
public class Main {

    public static void main(String[] args) {
          Scanner scanner = new Scanner(System.in);
          boolean choice1 = scanner.nextBoolean();
           //是否创建对象 
           if (choice1==true)
           {
                //账户1
        BankAccount myAccount1=new BankAccount();
                //账户2
        BankAccount myAccount2=new BankAccount(100);
                //选择操作类型
                int choice2 = scanner.nextInt();
                switch(choice2){
                  case 0://存款
                   int depositAmount=scanner.nextInt();
              myAccount2.deposit(depositAmount);
                     break;
                   case 1://取款
            int withdrawAmount=scanner.nextInt();
              myAccount2.withdraw(withdrawAmount);
                     break;
                }
                
         System.out.println(myAccount2.getBalance());
           }
            
            System.out.println(BankAccount.accountNumber);
            scanner.close();
    }

}
输入样例:
输入1:

true
0 20
输出样例:
120
2
输入样例:
输入2:

true
1 120
输出样例:
输出2:

Invalid Amount
100
2
输入样例:
输入3:

false
输出样例:
输出3:

0

解题思路

按照题目要求来写即可,比较简单

Java代码

class BankAccount {
    static int accountNumber = 0; //开户数量,每创建一个BankAccount对象,该变量自增1
    int balance; //账户余额

    public BankAccount() { //每次创建对象都会调用无参数构造器或有参构造器 取决于参数是否为空
        balance = 0;
        accountNumber++; //每创建一个BankAccount对象,该变量自增1
    }

    public BankAccount(int balance) { //每次创建对象都会调用无参数构造器或有参构造器 取决于参数是否为空
        this.balance = balance;
        accountNumber++;
    }

    public int getBalance() {//一个getBalance方法,返回账户余额
        return balance;
    }

    public int withdraw(int amount) {//一个withdraw方法,返回账户余额
        if (amount > balance || amount < 0) {
            System.out.println("Invalid Amount");
        }
        else {
            balance -= amount;
        }
        return balance;
    }
    public int deposit(int amount) {
        if (amount < 0) {
            System.out.println("Invalid Amount");
        } else {
            balance += amount;
        }
        return balance;
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值