0

今、私は現在、簡単なグラフィックプログラムを書いています。その中で私はm_ballと呼ばれる配列を持っています。

現在、m_ballにはクラスBallの最大20個のインスタンスが含まれていると想定されています。

Rigth今私は次のコードでこれを行います=

        Ball m_activeBall0 = new Ball();
        Ball m_activeBall1 = new Ball();
        Ball m_activeBall2 = new Ball();
ect...
        m_ball[1] = m_activeBall0;
        m_ball[2] = m_activeBall1;
        m_ball[3] = m_activeBall2;
ect...

さて、それはすべて健全です。しかし、forループでそれを行うことは可能ではありません。このようなもの=

        for(int i = 0; i <m_ball.length;i++) {
            Ball m_activeBall[i] = new Ball();
            m_ball[i] = m_activeBall[i];
        }

または私はそれを失ったことがありますか?

私は単にこれを行う方法を見つけることができないようです。

Googleを試しましたが、答えが見つからないようです。

ああ..はい。追加するのを忘れました。そのJava。

4

2 に答える 2

2

forループを使用できます。

for (int i = 0; i < m_ball.length; i++)
{
     m_activeBall[i] = new Ball();
     m_ball[i]       = m_activeBall[i];
}

言及するだけArrays.copyOf()です。他の場所で作成された場合m_activeBallは、そのコピーを作成できます。

Ball[] copy = Arrays.copyOf(m_activeBall, m_activeBall.length);
于 2012-04-12T09:20:26.387 に答える
1
Ball[] m_ball = new Ball[20];

for(int i = 0; i < m_ball.Length; i++)
{
   m_ball[i] = new Ball();
}

これはC#で作成しましたが、Javaでも同じだと確信しています。乾杯。:)

于 2012-04-12T09:19:31.050 に答える