java.lang.System.arraycopy()%uA0方法复制从指定源数组的数组,开始在指定的位置,到目标数组的指定位置。%uA0阵列组件的子序列是从src引用由dest引用的目标数组源阵列复制。复制数组的数量等于该长度的参数。
在位置的组件srcPos%uA0通过%uA0srcPos + length - 1%uA0源数组中复制到位置destPos通过destPos+length- 1,分别为目标数组。
声明
以下是java.lang.System.arraycopy()方法的声明
public static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length)
参数
-
src%uA0-- 源阵列。
-
srcPos%uA0-- 源阵列中的起始位置。
-
dest%uA0--%uA0目标数组。
-
destPos%uA0-- 是在目标数据的起始位置。
-
length%uA0-- 此是要被复制的数组元素的数量。
返回值
此方法不返回任何值。
异常
-
IndexOutOfBoundsException%uA0--如果复制会导致对数据的访问数组边界之外。
-
ArrayStoreException%uA0-- 如果在src数组中的元素不能被储存,因为类型不能匹配到dest数组。
-
NullPointerException%uA0-- 如果src或dest为null。
例子
下面的例子显示java.lang.System.arraycopy()方法的使用。
package com.yiibai import java.lang.* public class SystemDemo { public static void main(String[] args) { int arr1[] = { 0, 1, 2, 3, 4, 5 } int arr2[] = { 0, 10, 20, 30, 40, 50 } // copies an array from the specified source array System.arraycopy(arr1, 0, arr2, 0, 1) System.out.print("array2 = ") System.out.print(arr2[0] + " ") System.out.print(arr2[1] + " ") System.out.print(arr2[2] + " ") System.out.print(arr2[3] + " ") System.out.print(arr2[4] + " ") } }
让我们来编译和运行上面的程序,这将产生以下结果:
array2 = 0 10 20 30 40