您的位置:首页 > 运维架构

System.arraycopy()实现数组间的复制

2018-01-29 18:42 155 查看
通过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都是包含在内的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java arraycopy java复制