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();
相关文章
相关标签/搜索