【java】数组的复制System.arraycopy

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_31083947/article/details/80160490

这里写图片描述

默认提供的一种数组复制的方法
System.arraycopy(src, srcPos, dest, destPos, length);
src:源数组
srcPos:源数组开始位置
dest:目标数组
destPos:目标数组开始位置
length:复制的长度

这种方法会报三种错误:
1、ArrayIndexOutOfBoundsException(因为你目标数组的长度不够)
2、NullPointerException
3、ArrayStoreException(类型不匹配,比如你对List集合使用这个方法就报这种错)

注意:

String[] a ={"0","1","2","3","4","5","6"};
String[] b = new String[a.length];
b=a;//这种复制数组方式是不可行的,因为a和b指向了同一个数组,一旦改变了b数组中的值,a数组中也会同时改变

猜你喜欢

转载自blog.csdn.net/qq_31083947/article/details/80160490