原值问题"/>
关于java中对象引用导致更改原值问题
当我在项目中需要用到这个对象,并更改值时,这时会影响之前流程的话,需要进行一次深度克隆;
1、可实现Cloneable类实现(不推荐,需要代码层层构建)
2、可直接进行转JSON操作,再转对象。方式很多,也可借助工具类,但是个人觉得转JSON的操作最简单,demo如下(可替换对象List<T>转换)。主要代码已加蓝
public static void main(String[] args) {List<String> li1=new ArrayList<>();li1.add("1");li1.add("2");li1.add("3");li1.add("4");li1.add("5");List<String> li2=li1;li2.add("6");System.out.println(li1);List<String> li3= JSONObject.parseArray(JSONObject.toJSONString(li1),String.class);li3.add("7");System.out.println(li1);System.out.println(li3); }
运行如下
更多推荐
关于java中对象引用导致更改原值问题
发布评论