

新闻资讯
技术教程Java 中复制数组的方法有两种:1. 使用 Arrays.copyOf() 创建新副本数组;2. 使用 System.arraycopy() 在已分配数组中复制元素。Arrays.copyOf() 更简单高效,System.arraycopy() 更灵活,可指定起始索引和复制长度。复制后,数组之间互不影响,且如果数组包含对象,复制后仍引用同一对象。
如何使用 Java 复制数组
在 Java 中,有两种主要的方法可以复制数组:
1. 使用 Arrays.copyOf() 方法
int[] originalArray = {1, 2, 3, 4, 5};
int[
] copyArray = Arrays.copyOf(originalArray, originalArray.length);此方法创建一个新数组,其中包含原始数组中所有元素的副本。新数组的长度与原始数组的长度相同。
2. 使用 System.arraycopy() 方法
int[] originalArray = {1, 2, 3, 4, 5};
int[] copyArray = new int[originalArray.length];
System.arraycopy(originalArray, 0, copyArray, 0, originalArray.length);此方法将原始数组中的元素复制到预先分配的新数组中。起始索引和复制的元素数量由 System.arraycopy() 方法的参数指定。
区别
Arrays.copyOf() 方法返回一个新数组,而 System.arraycopy() 方法直接修改目标数组。Arrays.copyOf() 方法更简单且高效,而 System.arraycopy() 方法更灵活,允许您指定起始索引和复制的元素数量。注意事项
IndexOutOfBoundsException。