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 类型变量使用了相同的名称,并且希望将 x 也用于 Turtle 引用。这不起作用,因为 x 名称已经用于其他用途。

于 2013-11-02T12:19:17.207 回答