0

私はJavaに少し慣れていませんが、メソッドを作成するためにグーグル検索を行ったところ、結果がまちまちだったので、これを実現する方法について少し混乱しています。基本的に、20個の一意のアカウント番号を格納する配列があります。もっと。アカウント番号を保存することに加えて、アカウントの残高を保存するオプションをユーザーに提供します(お金、はい、これは銀行口座の一種の宿題だと思います)

したがって、私が直面している問題は、プログラムの実行時のプロセスで、ユーザーが15個のアカウントを追加することを決定した場合、結果として生じるaccnoエントリを次の空き配列インデックスに入れる方法を知りたいということです。また、アカウント数を20に制限した後、アカウントを追加できないことを示すメッセージをトリガーします

public static void addAccount()
{

    int i=0;
    String accno, input;
    double accbal;
    Scanner sc = new Scanner(System.in);
    String[] accnums = new String[20];
    System.out.print("Enter the account number:");
    accno = sc.nextLine();

    if(accno.length() != 9) //the accno shld not be more than 9.
    {
        System.out.println("Wrong accnum");
    }
    else
    {
       //THis is the part i am not sure how to put the code tks.
    }

    input= accnums[1];
   System.out.println("The value:"+input);//this is just for me to display / test
}
4

2 に答える 2

0

配列の代わりにハッシュマップを使用してみませんか?を特徴付ける属性を使用してAccountクラスを作成します。次に、AccountManagerクラスをシングルトン(http://it.wikipedia.org/wiki/Singleton)として作成します。ACcountManagerで、ハッシュマップのプライベート属性と、キーを使用してアカウントのインデックスを追加および取得するために使用するいくつかのメソッドを追加します。

于 2012-08-19T07:32:20.723 に答える
0

最も単純なもの(最も効率的ではありませんが、ここでの問題ではないと思います)は、ループしてを探しnull、最初のnull値に配置することができます。

int j;
for (j = 0; j < accnums.length; j++)
  if (accnums[j] == null) break;
if (j==accnums.length)  {
  // error msg, the array is already full
} else { 
  //insert element into index j
}
于 2012-08-19T07:50:19.140 に答える