system.arrayCopy

Posted zhangfengshi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了system.arrayCopy相关的知识,希望对你有一定的参考价值。

public class ArrayDemo {

    
   /* public static void main(String[] args) {
        int[] a=new  int[4];
        
        int[] b=new int[5];
        
        Arrays.fill(a, 1);
        Arrays.fill(b, 2);
        
        System.arraycopy(a, 0, b,0, 2);
//        
        System.out.println(Arrays.toString(b));
        
//        System.out.println(5/3);//返回整数部分
    }*/
output:

[1, 1, 2, 2, 2]

 

public static void main(String[] args) {

int[] a={1,2,3,4,5};


 


int[] b= {6,7,8,9,10};


 


// int[] b=new int[5];


 


// Arrays.fill(b, 6);


 


System.arraycopy(a, 1, b,2, 2);


//


System.out.println(Arrays.toString(b));

}

output:

 

[6, 7, 2, 3, 10]

 

这个浅拷贝是重要基础点,因为arraylist的动态扩容就是基于这个属性

第一个参数是:源对象

第二个:从源数组中的什么位置开始复制的偏移量

第三个:待复制到的目标对象

第四个:从目标数组的什么位置开始复制偏移量

第五个:复制的个数

注意:

复制的对象是引用,而不是对象本身的拷贝



以上是关于system.arrayCopy的主要内容,如果未能解决你的问题,请参考以下文章

System.arraycopy 不抛出 ArrayIndexOutOfBoundsException

System.arraycopy 和Arrays.copyOf

Java 学习笔记 System.arraycopy 复制数组

有啥理由更喜欢 System.arraycopy() 而不是 clone()?

Java System.arraycopy

Java 数组中System.arraycopy()方法的使用详解