对java中的List进行深拷贝,并进行删除测试

List<String> list = new ArrayList<>(); // 需要拷贝的原始List

list.add("aaa");

list.add("bbb");

list.add("ccc");

List<String> listNew = new ArrayList<>(); // 新List

// 将原始List的值赋值给新List

CollectionUtils.mergeArrayIntoCollection(new Objectlist.size(), listNew);

Collections.copy(listNew, list);

// 现在将心List中的值删除一个,会发现不影响原始List,例如:

List<String> list_remove= new ArrayList<>(); // 中间List

for (String s : listNew){

if("aaa".equals(s)){

list_remove.add(s);

}

}

listNew.removeAll(list_remove);

System.out.println(listNew); // bbb, ccc

System.out.println(list); // aaa, bbb, ccc 原始list没变

相关推荐
我登哥MVP6 分钟前
走进 Gang of Four 设计模式:解释器模式
java·设计模式·解释器模式
智码看视界7 分钟前
Tomcat架构深度拆解:Connector和Container到底怎么配合的?
java·servlet·架构·tomcat·web服务器
浪客川8 分钟前
idea 技巧 region 的使用
java·ide·intellij-idea
不肥嘟嘟右卫门24 分钟前
鸿蒙原生ArkTS布局方式之List垂直列表布局深度解析
华为·list·harmonyos
CHANG_THE_WORLD29 分钟前
逐层拆解:C++ 虚函数从对象内存到手工调用的完整过程
java·开发语言·c++
我登哥MVP30 分钟前
走进 Gang of Four 设计模式:过滤器模式
java·设计模式·过滤器模式
吃饱了得干活38 分钟前
实时弹幕应该怎么搞?一篇带你从入门到生产级实战
java·后端
tianyuanwo1 小时前
深入掌握 java -jar 命令:从基础到 Jenkins Agent 实战
java·jenkins·jar
Full Stack Developme1 小时前
MyBatis-Plus(MP)AST 抽象语法树 设计原理
java·tomcat·mybatis
leonidZhao1 小时前
Java25新特性:稳定值
java