Java與C語言相比,在二維數組的定義和操作上有所不同。首先,在Java中二維數組是一個數組對象,需要使用new關鍵字來創建。而C語言中二維數組直接定義就可以了。
//Java中創建一個二維數組 int[][] arr = new int[3][4]; //C語言中創建一個二維數組 int arr[3][4];
其次,在Java中二維數組的每一行可以有不同的長度,而C語言中每一行的長度必須相同。
//Java中創建一個每行長度不同的二維數組 int[][] arr = {{1}, {2, 3}, {4, 5, 6}}; //C語言中創建一個每行長度相同的二維數組 int arr[3][3] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
最后,在Java中二維數組在內存中是連續的,而C語言中二維數組在內存中是分散的。
//Java中創建一個二維數組并打印它的地址 int[][] arr = new int[3][4]; System.out.println(arr); //將輸出一個地址 //C語言中創建一個二維數組并打印它的地址 int arr[3][4]; printf("%p\n", arr); //將輸出多個地址,因為內存中是分散的
綜上所述,Java中的二維數組與C語言有著不同的定義和操作方式,需要注意它們之間的區別。