java中for循环往集合中加数据
时间: 2024-04-24 07:27:32 浏览: 83
天津理工大学中加数据结构期末卷子
在Java中,使用for循环往集合中添加数据的方式有多种。其中一种常见的错误方式是在循环内部创建对象,并将该对象添加到集合中。这样做会导致集合中的所有元素都是最后一个添加的对象。这是因为在Java中,对象是引用类型,当我们将一个对象添加到集合中时,实际上是将该对象的引用添加到集合中。而在循环中,每次迭代都会修改同一个对象的属性值,因此最终集合中的所有元素都指向同一个对象,且属性值都是最后一次迭代的结果。
为了解决这个问题,我们可以在每次迭代中创建一个新的对象,并将其添加到集合中。这样每个对象都是独立的,不会相互影响。以下是一种正确的方式:
List<Person> list = new ArrayList<>();
for (int i = 0; i < 10; i++) {
Person ob = new Person();
ob.setAge(i);
list.add(ob);
}
在这个例子中,我们在每次迭代中都创建了一个新的Person对象,并将其添加到集合中。这样就确保了集合中的每个元素都是独立的,且具有不同的属性值。\[2\]
#### 引用[.reference_title]
- *1* *2* [java:for循环往List添加元素,导致所有元素全部是最后一个元素](https://blog.csdn.net/qq_30114277/article/details/118419178)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item]
- *3* [Java用for循環Map](https://blog.csdn.net/weixin_28949355/article/details/115989102)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
阅读全文