对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 Object[list.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没变

相关推荐
桌面运维家7 分钟前
IDV云桌面vDisk机房部署方案模板特性解析
java·开发语言·devops
哈密瓜刨冰28 分钟前
深入浅出 SpringMVC:核心注解全解析与实战用法
java
geNE GENT2 小时前
Spring Boot管理用户数据
java·spring boot·后端
怒放吧德德2 小时前
Spring Boot实战:Event事件机制解析与实战
java·spring boot·后端
wsx_iot2 小时前
arthas使用
java·arthas
lifallen2 小时前
Flink Watermark 设计分析
java·大数据·flink
AKA__Zas3 小时前
初识 事务
java·开发语言·数据库·sql
kongba0073 小时前
2026年4月19日 kimi记忆备份
java·前端·数据库
AI人工智能+电脑小能手3 小时前
【大白话说Java面试题】【Java基础篇】01_说说ArrayList的底层原理/扩容规则
java·后端·面试·list
高斯林.神犇3 小时前
六、java配置类改造ioc
java·开发语言