第一種方式利用for迴圈:
int[] a={1,2,4,6};
int length=a.length;
int[] b=new int[length];
for (int i = 0; i < length; i++) {
b[i]=a[i];
}
第二種方式直接賦值:
int[] array1={1,2,4,6};
int[] array2=a;
這裡把array1陣列的值複製給array2,如果你這樣去執行,就會發現此時兩個陣列的值是一樣的。這是傳遞的是引用(也就是地址),之後改變其中一個陣列另一個也會跟著變化。
第三種方式:
利用Arrays自帶的copyof
int copy[] = Arrays.copyOf(a, a.length);
第四種方式:
這裡再介紹一下System.arraycopy這個函式,從JAVA API中找了一段。大家看一下。
public static voidarraycopy(Object src, int srcPos, Object dest, int destPos, int length)從指定源陣列中複製一個陣列,複製從指定的位置開始,到目標陣列的指定位置結束。從src引用的源陣列到dest引用的目標陣列,陣列元件的一個子序列被複制下來。被複制的元件的編號等於length引數。源陣列中位置在srcPos到srcPos+length-1之間的元件被分別複製到目標陣列中的destPos到destPos+length-1位置。