List深拷贝后,数据还是被串改

List深拷贝后数据还是被串改

List newList = new ArrayList<>(oldList)

这是采用构造参数做到的深拷贝,是没问题的

newList.pushAll(oldList)

将原数组的数据挨个放入,也可以认为是一种深拷贝

你甚至想到了java8streamAPI

用map()返回一个新的还是不行

以上还不行

如果你list的元素是基本类型,肯定已经解决了,看到这里,你已经想到深拷贝的问题,有没有再多想一步?深-深拷贝

其实你list的深拷贝已经没问题了,新鸡翅哇一吃莫多

元素没有深拷贝

传统功夫,点到为止

相关推荐
皮皮林55114 小时前
利用闲置 Mac 从零部署 OpenClaw 教程 !
java
华仔啊20 小时前
挖到了 1 个 Java 小特性:var,用完就回不去了
java·后端
SimonKing20 小时前
SpringBoot整合秘笈:让Mybatis用上Calcite,实现统一SQL查询
java·后端·程序员
日月云棠1 天前
各版本JDK对比:JDK 25 特性详解
java
用户8307196840822 天前
Spring Boot 项目中日期处理的最佳实践
java·spring boot
JavaGuide2 天前
Claude Opus 4.6 真的用不起了!我换成了国产 M2.5,实测真香!!
java·spring·ai·claude code
IT探险家2 天前
Java 基本数据类型:8 种原始类型 + 数组 + 6 个新手必踩的坑
java
花花无缺2 天前
搞懂new 关键字(构造函数)和 .builder() 模式(建造者模式)创建对象
java
用户908324602732 天前
Spring Boot + MyBatis-Plus 多租户实战:从数据隔离到权限控制的完整方案
java·后端
桦说编程2 天前
实战分析 ConcurrentHashMap.computeIfAbsent 的锁冲突问题
java·后端·性能优化