使用System.arraycopy()实现数组之间的复制【转】

System提供了一个静态方法arraycopy(),我们可以使用它来实现数组之间的复制。

其函数原型是: public static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length)

src:源数组; srcPos:源数组要复制的起始位置; dest:目的数组; destPos:目的数组放置的起始位置; length:复制的长度。

注意:src and dest都必须是同类型或者可以进行转换类型的数组.

有趣的是这个函数可以实现自己到自己复制,比如:

   int[] fun ={0,1,2,3,4,5,6};

  System.arraycopy(fun,0,fun,3,3);

则结果为:{0,1,2,0,1,2,6};

实现过程是这样的,先生成一个长度为length的临时数组,将fun数组中srcPos 到srcPos+length-1之间的数据拷贝到临时数组中,再执行System.arraycopy(临时数组,0,fun,3,3).

使用System.arraycopy()实现数组之间的复制【转】

时间: 2024-10-11 13:10:14

使用System.arraycopy()实现数组之间的复制【转】的相关文章

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

System提供了一个静态方法arraycopy(),我们可以使用它来实现数组之间的复制.其函数原型是: public static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length) src:源数组: srcPos:源数组要复制的起始位置: dest:目的数组: destPos:目的数组放置的起始位置: length:复制的长度. 注意:src and dest都必须是同类型或者可以进行转换类

【java】为数组全部元素赋同样的值 以及 数组之间的复制

为数组全部元素赋同样的值 : boolean[] resArray=new boolean[100]; Arrays.fill(resArray, true); 数组之间的复制: System.arraycopy(Object src, int srcPos, Object dst, int dstPos, int length) src:源数组: srcPos:源数组要复制的起始位置: dest:目的数组. destPos:目的数组放置的起始位置: length:复制的长度. 注意:src a

【java】为数组所有元素赋相同的值 以及 数组之间的复制

为数组所有元素赋相同的值 : boolean[] resArray=new boolean[100]; Arrays.fill(resArray, true); 数组之间的复制: System.arraycopy(Object src, int srcPos, Object dst, int dstPos, int length) src:源数组: srcPos:源数组要复制的起始位置: dest:目的数组: destPos:目的数组放置的起始位置: length:复制的长度. 注意:src a

Android:实现数组之间的复制

System提供了一个静态方法arraycopy(),我们可以使用它来实现数组之间的复制 System.arraycopy(src, srcPos, dst, dstPos, length); src:源数组: srcPos:源数组要复制的起始位置: dest:目的数组: destPos:目的数组放置的起始位置: length:复制的长度.

System.arraycopy方法实现数组的复制

1-1:System中提供了一个native静态方法arraycopy(),可以使用这个方法实现数组之间的复制.对于普通的一维数组来说,会复制每个数组的值到另一个数组中,即每个元素都是按值传递,修改副本不会影响原来的值.方法原型及复制复制基本类型数组的示例如下: /** * System.arraycopy的方法原型 * @param src       要复制的源数组 * @param srcPos    源数组要复制的起始位置(从0开始) * @param dest      要复制的目标数

[Java基础] System.arraycopy使用

转载自:http://blog.csdn.net/java2000_net/article/details/4059465 System提供了一个native 静态方法arraycopy(),我们可以使用它来实现数组之间的复制.其函数原型是: public static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length) src:源数组: srcPos:源数组要复制的起始位置: dest:目的数

【JAVA】System.arraycopy()使用

参考链接: 3分钟了解Java中System.arraycopy的用法 System提供了一个静态方法arraycopy(),可以使用它来实现数组之间的复制. 函数原型: public static native void arraycopy(Object src,int srcPos,Object dest, int destPos,int length): * @param src the source array. 源数组 * @param srcPos starting position

System.arraycopy 数组复制

函数原型: public static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length) ; src:源数组: srcPos:源数组要复制的起始位置: dest:目的数组: destPos:目的数组放置的起始位置: length:复制的长度. 例子: System.arraycopy(from, 0, keyString, 0, from.length); from 和 keyString都是

数组的复制 --System.arraycopy()

import java.util.Arrays; public class HellowWorld { public static void main(String[] argv ) { int[] arr= new int[]{1,6,6,9,3,4,21,26,30,35}; int[] arr1=new int[arr.length]; //数组的复制(原数组,从原数组那个下标开始拷贝,新数组,在新数组的那个下标去拷贝,要拷贝的元素个数) System.arraycopy(arr, 0,