一、for
循环
int[] array = {1, 2, 3, 4, 5, 6};
int[] array2 = new int[array.length];
for (int i = 0; i < array.length; i++) {
array2[i] = array[i];
}
二、静态方法 Arrays.copyof()
int[] array = {1, 2, 3, 4, 5, 6};
int[] array2 = Arrays.copyOf(array, array.length);
三、静态方法 System.arraycopy()
int[] array = {1, 2, 3, 4, 5, 6};
int[] array2 = new int[array.length];
System.arraycopy(array, 0, array2, 0, array.length);
四、数组对象 clone()
方法
int[] array = {1, 2, 3, 4, 5, 6};
int[] array2 = array.clone();
效率对比
关于引用类型数组
对于引用类型数组来说,上面四种数组拷贝方式都是浅拷贝,因为数组元素存放的只是指向对象的指针,要想实现深拷贝可以通过序列化后再反序列化实现。