簡単なバンキング プログラムを作成しようとしています。
基本的な機能は次のとおりです。
1. open account - (open <amount>)-- returns account number
2.check balance - (balance <AccountNumber>)
次のコードはこれです。問題はこのコードのどこかにあると思うので、他のクラスと main() を含むクラスは投稿しません::
public class BankAccount {
private static int bankAccNoGen=1001;
private int balance;
private int bankAccNo;
private int i=0;
BankAccount[] bankArray=new BankAccount[10];
public void openBankAccount(int openAmount){
BankAccount ba =new BankAccount();
ba.balance=openAmount;
ba.bankAccNo=bankAccNoGen;
bankArray[i] = ba;
System.out.println("Account opened with the account number : "+bankArray[i].bankAccNo);
System.out.println("Please note the account number for later use.");
System.out.println("Balance for account no : "+bankArray[i].bankAccNo+" is : "+ bankArray[i].balance);
++bankAccNoGen;++i;
}
public void printBalance(int accNo){
for(int i=0;i<10;i++){
if(bankArray[i].bankAccNo==accNo){
System.out.println("Account Number :"+ accNo +" currently has :"+bankArray[i].balance);
}
}
}
}
これを実行した後、次の方法で銀行口座を開設できます。
open 1000
出力:
Account opened with the account number : 1001
Please note the account number for later use.
Balance for account no : 1001 is : 1000
I can check balance by :
balance 1001
エラー:
Exception in thread "main" java.lang.NullPointerException at
BankAccount.printBalance(BankAccount.java:27) at
ReadInput.inputRead(ReadInput.java:36) at
SimpleBank.main(SimpleBank.java:11)