51 lines
1.7 KiB
Java
51 lines
1.7 KiB
Java
package com.inmind.system06;
|
||
|
||
import java.util.Arrays;
|
||
|
||
/*
|
||
System中的arrayCopy方法
|
||
|
||
static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length)
|
||
将指定源数组中的数组从指定位置复制到目标数组的指定位置。
|
||
参数一src :表示源数组
|
||
参数二srcPos:表示源数组的索引位置
|
||
参数三dest:表示目标数组
|
||
参数四destPos:表示目标数组的索引位置
|
||
参数五length:长度
|
||
|
||
将src数组中前3个元素,复制到dest数组的前3个位置上
|
||
复制元素前:
|
||
src数组元素[1,2,3,4,5],
|
||
dest数组元素[6,7,8,9,10]
|
||
复制元素后:
|
||
src数组元素[1,2,3,4,5],
|
||
dest数组元素[1,2,3,9,10]
|
||
*/
|
||
public class SystemDemo16 {
|
||
/*
|
||
复制元素前:
|
||
src数组元素[1,2,3,4,5],
|
||
dest数组元素[6,7,8,9,10]
|
||
复制元素后:
|
||
src数组元素[1,2,3,4,5],
|
||
dest数组元素[6,7,2,3,4]
|
||
*/
|
||
public static void main(String[] args) {
|
||
//static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length)
|
||
int[] srcArr = {1,2,3,4,5};
|
||
int[] destArr = {6,7,8,9,10};
|
||
/*
|
||
底层源码:
|
||
public static native void arraycopy(Object src, int srcPos,
|
||
Object dest, int destPos,
|
||
int length);
|
||
java中JNI:通过java代码调用底层C,C++代码从而操作硬件
|
||
*/
|
||
System.arraycopy(srcArr,1,destArr,2,3);
|
||
System.out.println(Arrays.toString(srcArr));
|
||
System.out.println(Arrays.toString(destArr));
|
||
|
||
//其实ArrayList底层就是数组,所以底层也是调用的arraycopy方法
|
||
}
|
||
}
|