执行以下操作的最佳方法是:
List<MyObject> list = new LinkedList<MyObject>();
for(int i=0; i<30;i++)
{
MyObject o1 = new MyObject();
list.add(o1);
}
Run Code Online (Sandbox Code Playgroud)
但事情是我不想创建具有相同名称的对象,我想用不同的名称创建它们,o1,o2,o3,o4,o5,o6,o7,o8,o9,o10我想将每个添加到列表中.做这个的最好方式是什么 ?
Ste*_*yle 10
您不需要为每个对象使用不同的名称.由于o1对象是在for循环中声明的,因此o1变量的范围仅限于for循环,并且在每次迭代期间重新创建...除了每次它将引用在该迭代期间创建的新对象.请注意,变量本身不存储在列表中,只存储在它所引用的对象中.
如果您不需要对新对象执行任何其他操作,只需将其添加到列表中,您可以执行以下操作:
for(int i=0; i<30;i++)
{
list.add(new MyObject());
}
Run Code Online (Sandbox Code Playgroud)
你为什么要给他们不同的名字?你正在for循环中创建对象,因此它不存在于外部,因此我认为没有理由给它们不同的名称.
回答你的问题:我看到的唯一方法,但我可能错了,就是创建一个MyObjects数组并执行:
List<MyObject> list = new LinkedList<MyObject>();
MyObject[] o = new MyObject[30];
for(int i = 0; i < 30; i++) {
o[i] = new MyObject();
list.add(o[i]);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
22617 次 |
| 最近记录: |