Java數(shù)組集合的深度復(fù)制代碼實(shí)例
這篇文章主要介紹了Java數(shù)組集合的深度復(fù)制代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
Java當(dāng)我們想要對(duì)一個(gè)數(shù)組進(jìn)行一些操作,同時(shí)又不希望對(duì)原來(lái)的數(shù)組數(shù)據(jù)有影響的時(shí)候,使用引用是不能滿足我們的需求的,
這時(shí)候我們可以使用System.arraycopy()方法實(shí)現(xiàn),對(duì)用這兩種復(fù)制方式,我們習(xí)慣稱(chēng)前者為淺復(fù)制,后者為深復(fù)制。深復(fù)制的
實(shí)現(xiàn)方法如下:
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)); }
像上面復(fù)制的問(wèn)題,在集合中我們也剛遇到過(guò),下面以HashMap實(shí)現(xiàn)深復(fù)制為例,代碼如下:
public static void hashMapcopyTest() { Map srcMap = new HashMap<String,String>(); 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()); }
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
java實(shí)現(xiàn)pgsql自動(dòng)更新創(chuàng)建時(shí)間與更新時(shí)間的兩種方式小結(jié)
本文主要介紹了java實(shí)現(xiàn)pgsql自動(dòng)更新創(chuàng)建時(shí)間與更新時(shí)間的兩種方式小結(jié),主要包括通過(guò)數(shù)據(jù)庫(kù)自身實(shí)現(xiàn)以及通過(guò)mybatisplus的TableField注解添加,具有一定的參考價(jià)值,感興趣的可以了解一下2024-01-01java訪問(wèn)者模式的靜態(tài)動(dòng)態(tài)及偽動(dòng)態(tài)分派徹底理解
這篇文章主要為大家介紹了java訪問(wèn)者模式的靜態(tài)動(dòng)態(tài)及偽動(dòng)態(tài)分派徹底理解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-06-06IDEA連接postgressql數(shù)據(jù)庫(kù)操作
這篇文章主要介紹了IDEA連接postgressql數(shù)據(jù)庫(kù)操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-08-08mybatis調(diào)用mysql存儲(chǔ)過(guò)程并獲取返回值方式
這篇文章主要介紹了mybatis調(diào)用mysql存儲(chǔ)過(guò)程并獲取返回值方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-08-08Spring Boot集成Mybatis的實(shí)例代碼(簡(jiǎn)潔版)
這篇文章主要介紹了Spring Boot集成Mybatis簡(jiǎn)潔版的教程,需要的朋友可以參考下2018-02-02SpringBoot集成Mybatis實(shí)現(xiàn)對(duì)多數(shù)據(jù)源訪問(wèn)原理
本文主要分析討論在SpringBoot應(yīng)用中我們?cè)撊绾闻渲肧qlSessionFactoryBean對(duì)象,進(jìn)而實(shí)現(xiàn)對(duì)多個(gè)不同的數(shù)據(jù)源的操縱,文章通過(guò)代碼示例介紹的非常詳細(xì),需要的朋友可以參考下2023-11-11spring boot加入攔截器Interceptor過(guò)程解析
這篇文章主要介紹了spring boot加入攔截器Interceptor過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-10-10詳解Spring Boot中如何自定義SpringMVC配置
這篇文章主要給大家介紹了關(guān)于Spring Boot中如何自定義SpringMVC配置的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2021-09-09