有時候需要建立一個新陣列,這個新陣列跟舊的陣列前面都一樣
只有最後幾個值不同或是加了幾個值
或是有兩個陣列,我們需要合併這兩個陣列的時候
除了用for迴圈把陣列一個一個倒進去以外
我們可以使用System的arraycopy方法
文件方法如下
arraycopy(Object src, int srcPos, Object dest, int destPos, int length)
第一個src要放入的是被複製的陣列
srcPos是指定被複雜的陣列從第幾項開始複製
dest放入的是要複製的陣列
destPos是指定要複製的陣列從第幾項開始寫入
length放入的是你總共要複製幾項資料
以下是最常用的兩個範例
public class copyArrayDemo {
public static void main(String[] args) {
System.out.println("This is demo 1");
int[] arr1 = {1,2,3};
int[] arr2 = new int[arr1.length+1];
System.arraycopy(arr1, 0, arr2, 0, arr1.length);
arr2[arr1.length]= 4;
// arr2 == {1,2,3,4}
for(int item:arr2){
System.out.println(item);
}
System.out.println("This is demo 2");
String[] array1 = {"item1","item2","item3"};
String[] array2 = {"demo1","demo2","demo3"};
String[] sum = new String[array1.length+array2.length];
System.arraycopy(array1, 0, sum, 0, array1.length);
System.arraycopy(array2, 0, sum, array1.length, array2.length);
// sum =={"item1","item2","item3","demo1","demo2","demo3"}
for(String item:sum){
System.out.println(item);
}
}
}
全站熱搜