Java中數組複製的4種方法

標籤: java基礎java


在Java中,咱們常常須要複製一個數組,如下介紹幾種數組複製方法。數組

1. for循環複製

最簡單直觀的方法,循環訪問當前數組的每個元素,並複製到新數組的相應下標。code

int [] oldArray = {1, 2, 3};
int [] newArray = new int[oldArray.length];
for(int i = 0; i < oldArray.length; i++){
    newArray[i] = oldArray[i];
}

2. System.arraycopy方法

這個方法是一個native方法,效率較高。對象

int [] oldArray = {1, 2, 3};
int [] newArray = new int[oldArray.length];
System.arraycopy(oldArray, 0, newArray, 0, oldArray.length);

3. Arrays.copyOf方法

這個方法底層也是調用了System.arraycopy方法,只是接口更加清晰和規範了。接口

// import java.util.Arrays;
int [] oldArray = {1, 2, 3};
int [] newArray = Arrays.copyOf(oldArray, oldArray.length);

4. Object的clone方法

也是native方法,直接內存複製,效率也高。可是clone返回的是Object對象,須要自動強制轉換,效率比上兩種低。內存

int [] oldArray = {1, 2, 3};
int [] newArray = oldArray.clone();
相關文章
相關標籤/搜索