System.arraycopy()的用法?

1.使用方法

public void arr(Object arr1, int x, Object arr2, int y, int length)

arr1 : 源数组;

x: 需要从源数组要复制的数据的起始位置, 从源数组复制数么,规定从第几位开始;

arr2:需要copy到的数组;

y:将copy 到的数据放在arr2中么,规定放在arr2数组中的具体位置;

length:复制的长度,就是从arr1源数组中,copy几个数据过来。

 

 

列子

arr1 = {1,2,3,4,5};

arr2 ={5,6,7,8,9,10,11};

 

System.arraycopy(arr1, 2, arr2, 1,3);   从 arr1中copy数据,从arr1中下标为2开始  就是 arr1中的  3 开始,

                  length =3 ,就是从arr1中截取3个长度。 就是 3, 4 ,5 。

                  规定的位置是1   就是arr2数组中下标为1的地方开始 

arr2 = {5,3,4,5,8,9,10};

 

 

2.注意事项!

注意! copy的过程中,不能超过这两个数组的本身长度。 数组中的数据不能为负数。

   此功能要求
   源的起始位置+长度不能超过末尾
   目标起始位置+长度不能超过末尾
   且所有的参数不能为负数

 

posted @ 2020-06-01 17:14  送外卖的小菜鸟  阅读(486)  评论(0编辑  收藏  举报