1. 程式人生 > >【java】陣列的複製System.arraycopy

【java】陣列的複製System.arraycopy

這裡寫圖片描述

預設提供的一種陣列複製的方法
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陣列中也會同時改變