從頭認識java-14.3 多維陣列功能
這一章節我們來討論一下多維陣列。
1.例子:
package com.ray.ch14;import java.util.Arrays;public class Test {public static void main(String[] args) {int[][] a = new int[2][2];System.out.println(Arrays.deepToString(a));}}輸出:
[[0, 0], [0, 0]]
上面的代碼是固定長度的多維陣列。
2.建立的幾種形式
第一種:
package com.ray.ch14;import java.util.Arrays;public class Test {public static void main(String[] args) {int[][] a = new int[2][2];a[0][0] = 1;a[0][1] = 2;a[1][0] = 3;a[1][1] = 4;System.out.println(Arrays.deepToString(a));}}
第二種:
package com.ray.ch14;import java.util.Arrays;public class Test {public static void main(String[] args) {int[][] a = { { 1, 2 }, { 3, 4 } };System.out.println(Arrays.deepToString(a));}}
第三種:
package com.ray.ch14;import java.util.Arrays;public class Test {public static void main(String[] args) {int[][] a = new int[2][2];// a[0] = { 1, 2 };//error,這種賦值方式只能夠在初始化的時候使用// a[0]=1;//error,a[0]是數組a[0] = new int[] { 1, 2 };a[1] = new int[] { 3, 4 };int[] b = { 1, 2 };System.out.println(Arrays.deepToString(a));}}
上面的代碼需要注意一下就是a[0]的賦值必須是new出來,不能夠使用上面的那種。
但是下面的數組b可以直接執行某一個數組,因為這種方式的賦值只能夠使用在初始化的時候。
第四種:
package com.ray.ch14;import java.util.Arrays;public class Test {public static void main(String[] args) {int[][] a = new int[][] { { 1, 2 }, { 3, 4 } };System.out.println(Arrays.deepToString(a));}}
3.注意點
例子:
package com.ray.ch14;import java.util.Arrays;public class Test {public static void main(String[] args) {// int[][][] a1 = new int[][][2];//error// int[][][] a2 = new int[][2][];//error// int[][][] a3 = new int[2][][2];//error// int[][][] a4 = new int[][][];//errorint[][][] a = new int[2][][];System.out.println(Arrays.deepToString(a));}}
觀察上面的代碼,我們得出下面結論:
1.控制長度的數字是可以為空白的
2.有長度控制的維度之前的那個維度必須也是有長度控制,這裡比較繞口,請觀察a1,a2,a3,a4
3.至少有一個長度控制的維度
4.初始化無長度控制的維度
package com.ray.ch14;import java.util.Arrays;public class Test {public static void main(String[] args) {// int[][][] a1 = new int[][][2];//error// int[][][] a2 = new int[][2][];//error// int[][][] a3 = new int[2][][2];//errorint[][][] a = new int[2][][];a[0] = new int[][] { { 1, 2 }, { 3, 4 } };a[1] = new int[][] { { 1, 2 }, { 3, 4 }, { 5, 6 } };System.out.println(Arrays.deepToString(a));}}
輸出:
[[[1, 2], [3, 4]], [[1, 2], [3, 4], [5, 6]]]
5.使用情境
多維陣列一般是用於矩陣的展示和計算。
總結:這一章節我們介紹了多維陣列的幾個基礎方面。
這一章節就到這裡,謝謝。