当我创建一个对象数组时,如何在每个对象内部添加构造函数的参数?像这样:
foos = new Foo[10];
我该如何使用构造函数创建10个对象?我不明白应该在哪里传递参数给每个对象的构造函数?
当我创建一个对象数组时,如何在每个对象内部添加构造函数的参数?像这样:
foos = new Foo[10];
我该如何使用构造函数创建10个对象?我不明白应该在哪里传递参数给每个对象的构造函数?
foos = new Foo[10];
Foo
实例引用的数组。但是,所有引用都被初始化为null。foos[0] = new Foo (...whatever arguments the constructor requires...);
...
这只是为了分配一个新的数组对象来保存多个元素的类型Foo。为了创建并存储实际对象,您将执行以下操作:
foos[0]=new Foo(); //Call constructor here
.
.
.
foos[10]= new Foo(); //Call constructor here
foos = new Foo[10];
Foo
,并不是创建对象。for(int i=0;i<foos.length; i++){
foos[i] = new Foo (your-argument);
}
请参阅数组了解更多详情。
你可以这样内联完成:
Foo[] foos = new Foo[] {
new Foo(1),
new Foo(2),
new Foo(10)
};
Foo[] foos = {
new Foo(1),
new Foo(2),
new Foo(10)
};
假设Foo以字符串为参数,那么Foo的构造函数如下:
public Foo(String arg){
this.arg = arg;
}
foos[0]=new Foo(argOne);
.
.
foos[10]= new Foo(argTen);
for(int i=0;i<foos.length; i++){
foos[i] = new Foo (arg + i);
}
int foosSize = 10;
Foo[] foos = new foos[foosSize];
for(int i = 0; i < foosSize; i++) {
foos[i] = new Foo();
}
这将创建一个新的foo对象并将其添加到您创建的数组中的索引中。
foos[i] = new Foo(...)
。 - SomeJavaGuy