问题出现的原因是在向ArrayList
以下是一个示例代码,说明如何使用这种解决方案:
import java.util.ArrayList;
public class Main {
public static void main(String[] args) {
ArrayList> parentList = new ArrayList<>();
ArrayList childList1 = new ArrayList<>();
ArrayList childList2 = new ArrayList<>();
childList1.add(1);
childList1.add(2);
childList2.add(3);
childList2.add(4);
parentList.add(new ArrayList<>(childList1));
parentList.add(new ArrayList<>(childList2));
// 添加新元素
ArrayList childList3 = new ArrayList<>();
childList3.add(5);
parentList.add(new ArrayList<>(childList3));
System.out.println(parentList);
}
}
在这个示例代码中,我们创建了一个名为parentList的ArrayList,其中包含childList1和childList2这两个子列表。然后,我们使用new ArrayList<>(childList1)等语法,创建新的ArrayList对象来保存每个子列表。这样,当引用任何一个子列表时,我们实际上引用的是全新的副本,而不是原始列表的引用。因此,可以确保当添加新元素时,不会影响先前添加的元素。
上一篇:ArrayList$Itr.next抛出错误concurrentModificationException。
下一篇:ArrayList<Document>的collect()方法中出现了java.lang.ClassCastException异常。