标签: java基础java
在Java中,咱们常常须要复制一个数组,如下介绍几种数组复制方法。数组
最简单直观的方法,循环访问当前数组的每个元素,并复制到新数组的相应下标。code
int [] oldArray = {1, 2, 3}; int [] newArray = new int[oldArray.length]; for(int i = 0; i < oldArray.length; i++){ newArray[i] = oldArray[i]; }
这个方法是一个native方法,效率较高。对象
int [] oldArray = {1, 2, 3}; int [] newArray = new int[oldArray.length]; System.arraycopy(oldArray, 0, newArray, 0, oldArray.length);
这个方法底层也是调用了System.arraycopy方法,只是接口更加清晰和规范了。接口
// import java.util.Arrays; int [] oldArray = {1, 2, 3}; int [] newArray = Arrays.copyOf(oldArray, oldArray.length);
也是native方法,直接内存复制,效率也高。可是clone返回的是Object对象,须要自动强制转换,效率比上两种低。内存
int [] oldArray = {1, 2, 3}; int [] newArray = oldArray.clone();