如果你使用 addAll
方法来将一个 List
中的 bean
对象添加到另一个 List
中,并且这两个列表引用相同的对象,那么对一个列表中 bean
对象的修改将影响到另一个列表。
例如:
List<YourBean> list1 = new ArrayList<>();
list1.add(new YourBean("Item 1"));
List<YourBean> list2 = new ArrayList<>();
list2.addAll(list1);
ArrayList.addAll(),clone()都是浅克隆。
(浅克隆:当改变克隆对象的引用类型的值(注意是值!)时,同时会改变原对象对应的值,因为都是同一个地址)
如list1.addAll(list2),更改list1,list2也会改变。