中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java項目中怎么對數組進行復制

發布時間:2020-12-03 15:35:33 來源:億速云 閱讀:172 作者:Leah 欄目:編程語言

這篇文章將為大家詳細講解有關Java項目中怎么對數組進行復制,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

        在Java里面,可以用復制語句”A=B”給基本類型的數據傳遞值,但是如果A,B是兩個同類型的數組,復制就相當于將一個數組變量的引用傳遞給另一個數組;如果一個數組發生改變,那么引用同一數組的變量也要發生改變。
        以下是歸納的 java 中復制數組的方法:
        (1) 使用FOR循環,將數組的每個元素復制或者復制指定元素,不過效率差一點
        (2) 使用clone方法,得到數組的值,而不是引用,不能復制指定元素,靈活性差一點
        (3) 使用System.arraycopy(src, srcPos, dest, destPos, length)方法,推薦使用

舉例:
1.使用FOR循環

int[] src={1,3,5,6,7,8};
int[] dest = new int[6];
for(int i=0;i<6;i++) dest[i] = src[i];

2.使用clone

int[] src={1,3,5,6,7,8};
int[] dest;
dest=(int[]) src.clone();//使用clone創建

副本,注意clone要使用強制轉換
3.使用System.arraycopy

int[] src={1,3,5,6,7,8};
int[] dest = new int[6];
System.arraycopy(src, 0, dest, 0, 6);

        System提供了一個靜態方法arraycopy(),我們可以使用它來實現數組之間的復制。
        其函數原型是:public static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length)

        src:源數組;;srcPos:源數組要復制的起始位置;
        dest:目的數組;destPos:目的數組放置的起始位置;
        length:復制的長度。

        注意:src and dest都必須是同類型或者可以進行轉換類型的數組。有趣的是這個函數可以實現自己到自己復制,比如:

int[] fun ={0,1,2,3,4,5,6};
System.arraycopy(fun,0,fun,3,3);

則結果為:{0,1,2,0,1,2,6};

關于Java項目中怎么對數組進行復制就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

阿城市| 汉寿县| 镇雄县| 博野县| 西宁市| 平昌县| 镇平县| 琼中| 义乌市| 尼勒克县| 胶州市| 斗六市| 宜黄县| 惠州市| 大理市| 桃园县| 康保县| 满洲里市| 将乐县| 阳东县| 弥勒县| 元氏县| 北安市| 婺源县| 福鼎市| 东宁县| 杭锦旗| 阿瓦提县| 龙里县| 崇义县| 宜兰县| 鹤壁市| 巴林右旗| 隆昌县| 盘山县| 丘北县| 涟源市| 金坛市| 炎陵县| 井研县| 黄大仙区|