Java二維陣列擴容
阿新 • • 發佈:2020-12-22
技術標籤:java
public static void main(String[] args) {
int a[][]=new int[3][3];
System.out.println(a.length);
a=Arrays.copyOf(a,a.length+1);
a[3]=new int[3];
//二維陣列擴容必須要分配空間,不然會丟擲異常
//(一維陣列不用分配空間)
System.out.println(a.length);
System.out.println (a[3][0]);
System.out.println(a[3][1]);
}
執行結果:
注意若陣列在函式內部擴容,則在main函式中陣列仍未擴容,因為改變的是函式的陣列形參,而不是原本的陣列。見下圖
static void kuo(int a[][])//陣列擴容
{
a=Arrays.copyOf(a,a.length+1);
a[3]=new int[3];
System.out.println(a.length);
}
public static void main(String[] args) {
int a[][]=new int[3][3];
System.out.println(a.length);
kuo(a);
System.out.println(a.length);
System.out.println(a[3][0]);
System.out.println(a[3][1]);
}