System.arraycopy 用法

2021-09-23  本文已影响0人  gcno93

开发了4年,我真的没用过这个,好菜啊!!!!!!!!!!!!!!!!!!!!

开始来学

第一 这个System.arraycopy,是数组拷贝的api

第二,看他参数

public static native void arraycopy(Object src, int srcPos,
Object dest, int destPos,
int length)

Params:
src – the source array. //原数组
srcPos – starting position in the source array. //拷贝原数组开始的位置
dest – the destination array. //目标数组
destPos – starting position in the destination data.//目标数组开始的位置
length – the number of array elements to be copied.//要复制的元素个数

第三,例子

   //初始化一个数组
     Object[] element1 = new Object[5];
        element1[0] = 0;
        element1[1] = 1;
        element1[2] = 2;
        element1[3] = 3;

        // 我需要在数组的index位置插入一个6
        int index = 1;

        /**
         * element1  原数组  //这个不需要解析
         * index  =====1  //这个不需要解析
         * element1   目标数组  //这个不需要解析
         * index+1   目标数组开始的位置 //这个不需要解析
         *
         * 这里可能需要解析一下
         * 如果原数组和目标数组是同一个数组,
         * 首先会复制位置srcPos到srcPos+length-1处的元素到一个临时数组
         * 然后从destPos位置开始复制临时数组的元素直到设置的元素数量位置
         * 第四个参数: 要复制的元素个数(记住是要拷的元素个数)
         *
         */

        System.arraycopy(element1,index,element1,index+1,3);

        element1[index] = 6;
上一篇 下一篇

猜你喜欢

热点阅读