0

基本的に、変数に文字「f」と変数「i」で表される数字の名前を付けたいと思います。しかし、どうすればいいのかわかりません。

int n = 2;
    for(int i = 0; i < generations; i++){
        creature[] f;
        fi = new creature[n];
        n = 2*n;
    }

上記のように、「fi」と表示されます。私はこれがうまくいかないことを知っています。これは、私が何を意味するかを示すためだけのものです。たとえば、最初の配列リストは「f0」、2番目は「f1」、3番目は「f2」というようになります。この作業を行うための助けをいただければ幸いです。ありがとう!

4

3 に答える 3

4

int 配列を持つことができ、次のように使用できます。あなたのやり方はJavaでは不可能です

   creature[][] f = new creature[size][];
   f[i] = new creature[n];
于 2012-12-30T16:50:38.557 に答える
4

あなたのコードを読んでも役に立ちませんが、あなたの説明は2次元配列を使いたいように聞こえます:

int n = 2;
Creature[][] f = new Creature[generations][];
for(int i = 0; i < generations; i++){
    f[i] = new Creature[n];
    n = 2*n;
}

次のように使用できます。

Creature[] generation0 = f[0];
于 2012-12-30T16:52:57.150 に答える
0

リフレクションを使用して名前で変数を取得できたとしても、これはクリーンでも効率的でもありません。

名前または番号で値にアクセスする標準的な方法は次のとおりです。

  • 次のように宣言された配列Creature[] f = new Creature[generations];: アクセスするf[i]
  • 次のように宣言されたマップMap<int, Creature> = new HashMap<>();: アクセスするf.get(i)

creatureに変更したことに注意してくださいCreature。Javaのベストプラクティスは、クラス名を大文字で始めることです。

于 2012-12-30T16:50:53.823 に答える