copyOf()函数:数组复制
copyOf()函数是Java提供的一个数组复制方法,可以用于将一个数组复制成一个新的数组。
语法是:public static int[] copyOf(int[] original, int newLength)
其中,original是需要复制的原始数组,newLength是新数组的长度。
copyOf()函数在实际应用中非常方便,可以用于复制数组的某一部分,也可以用于扩展、缩短数组的长度,并且可以保留原数组的部分或全部元素。
下面是使用copyOf()函数实现数组复制的示例代码:
public class ArrayCopyDemo {
public static void main(String[] args) {
int[] arr1 = {1, 2, 3, 4, 5};
int[] arr2 = new int[arr1.length];
// 使用copyOf()函数复制数组
arr2 = Arrays.copyOf(arr1, arr1.length);
// 输出原始数组和复制后的数组
System.out.println("原始数组:");
for (int i = 0; i < arr1.length; i++) {
System.out.print(arr1[i] + " ");
}
System.out.println("
复制数组:");
for (int i = 0; i < arr2.length; i++) {
System.out.print(arr2[i] + " ");
}
}
}
运行结果如下:
原始数组:
1 2 3 4 5
复制数组:
1 2 3 4 5
上述代码中,首先定义了一个长度为5的数组arr1,并初始化其中的元素。然后创建了一个同样长度的数组arr2,并使用Arrays类提供的copyOf()方法将arr1复制到arr2中。最后输出两个数组的元素,可以看到它们是相等的。
当然,copyOf()函数不仅仅可以将一个数组复制到另一个数组中,它还可以对数组进行扩展和缩短。
例如,我们可以将数组arr1扩展到8个元素,新元素全部赋值为0:
arr1 = Arrays.copyOf(arr1, 8);
这里就会得到一个长度为8的新数组,其中前5个元素与原数组相同,后3个元素的值均为0。
如果我们想缩短arr1数组的长度,只需要在copyOf()函数中指定新数组的长度即可:
arr1 = Arrays.copyOf(arr1, 3);
这样就会得到一个长度为3的新数组,其中前三个元素与原数组相同,而后面的元素都被移除掉了。
总之,copyOf()函数是Java中非常实用的一个数组复制方法,可以方便地完成数组的复制、扩展和缩短等操作。如果您还不熟悉这个函数的用法,建议多加练习和尝试,提高自己的编程水平。
