通过arraycopy()方法,我们可以实现复制指定长度的数据到本身或其他数组中去,arraycopy()是System提供的一个用于复制数组的静态方法。其源码如下:
public static native void arraycopy(Object src, int srcPos,
Object dest, int destPos,
int length);
其中的src为源数组,srcPos为源数组要复制的起始位置,dest为目标数组,destPos为目标数组要放置复制来的数组的起始位置,lenght为要复制的长度。
需要注意的是数组src和dest都必须是同种类型或者可以进行转换类型.
int[] array ={1,2,3,4,5,6};
System.arraycopy(array, 1, array, 2, 1);
结果为{1,2,2,4,5,6}
分析:复制src数组中的length个数据,复制的起点是数组下标为srcPos的数据。将复制的数据替换掉length个长度的dest的数据,替换的位置为下标为destPos的位置的数据。需要注意的是srcPos和destPos都是包含在内的。