Wondercease

浙ICP备2022017321号

复制 List

浅拷贝  

List 其本质就是数组,而其存储的形式是地址

1循环遍历复制

List<TestClone>listB=newArrayList<>(listA.size());

for(TestCloneclone:listA){

listB.add(clone);

}

2使用 List 实现类的构造方法

List<TestClone> listB = new ArrayList<>(listA);

3使用 list.addAll()

listB.addAll(listA);

4Java.util.Collections.copy()

Collections.copy(listB, listA)

5Java 8 Stream API 将 List 复制到另一个 List

List<TestClone> listB = listA.stream().collect(Collectors.toList());

6.JDK 10

List<TestClone> listB = List.copyOf(listA);

深拷贝

深拷贝就是将 listA 复制给 listB 的同时,给 listB 创建新的地址,再将地址 A 的内容传递到地址 B

发表评论

您的电子邮箱地址不会被公开。