扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
这篇文章给大家介绍Java中怎么实现数组集合的深度复制,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
创新互联公司主要从事成都网站制作、成都网站设计、网页设计、企业做网站、公司建网站等业务。立足成都服务连江,十多年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18980820575Java当我们想要对一个数组进行一些操作,同时又不希望对原来的数组数据有影响的时候,使用引用是不能满足我们的需求的,
这时候我们可以使用System.arraycopy()方法实现,对用这两种复制方式,我们习惯称前者为浅复制,后者为深复制。深复制的
实现方法如下:
public static void arraycopyTest() { int[] arr = {1,2,3}; int[] array = new int[arr.length]; System.arraycopy(arr,0,array,0,arr.length); array[1] = 0; array[2] = 0; System.out.println(Arrays.toString(arr)); System.out.println(Arrays.toString(array)); }
像上面复制的问题,在集合中我们也刚遇到过,下面以HashMap实现深复制为例,代码如下:
public static void hashMapcopyTest() { Map srcMap = new HashMap(); srcMap.put("1","test1"); srcMap.put("2","test2"); srcMap.put("3","test3"); Map destMap = new HashMap(); destMap.putAll(srcMap); destMap.remove("1"); destMap.remove("2"); System.out.println(srcMap.toString()); System.out.println(destMap.toString()); }
关于Java中怎么实现数组集合的深度复制就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
另外有需要云服务器可以了解下创新互联建站www.cdcxhl.com,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流