0

新しい Turtle オブジェクトを作成する場合は、単純にTurtle t1 = new Turtle(w,4,4);.

しかし、100 匹のカメを作成したいとしましょう。while 関数を使用して実行できますか? 私はこれに似たことができると思った:¨

int x =scan.nextInt();
while(x>0){
        x--;
        Turtle x = new Turtle(w,4,4);
        }

タートルの名前は、変数 x の数値と同じだと思っていましたが、すべてのタートルに x という名前を付けようとしているので、うまくいきません..

4

1 に答える 1

2

はい、できます。

作成した x 個の異なるオブジェクトへの参照を保持していることを確認してください。そうしないと、それらを再度参照できなくなります。

int x = scan.nextInt();
Turtle[] turtles = new Turtle[x];
while(x>0){
        x--;
        Turtle turtle = new Turtle(w,4,4);
        turtles[x] = turtle;
        }

この後、それらを参照することで、任意の x タートルを使用できます。

turtles[23].doSomething(param);

int 型の変数に同じ名前を使用し、Turtle 参照にも x を使用したかったため、元のコードは機能しません。x の名前はすでに別のものに使用されているため、これは機能しません。

于 2013-11-02T12:19:17.207 に答える