Java的List.add()坑

来源:互联网 发布:win10手写笔记软件 编辑:程序博客网 时间:2024/06/05 16:18

在循环中,向list中添加对象,结果是只把最后一个对象重复地添加了进去,重复次数就是循环次数。

原因: 将对象add入list中时,放入list中的其实是对象的引用 ;而每次循环只是简单  的set 对象的属性,set新的属性值,而add进list中的对象还是同一个对象id,也就是同一个对象,每次add之后,list发现对象引用和之前元素一样,就覆盖掉了之前add的对象。所以循环之后list中的对象是重复的对象

原创粉丝点击