Java 二维数据的几种写法

// 一维数组
int arr[] = new int[] {1, 2, 3}

// 二维数组的静态初始化
int arr1[][] = new int[] {{1, 2, 3}, {4, 5}, {6, 7, 8, 9}}
// 也可以利用类型推断这样写
int arr1[][] = {{1, 2, 3}, {4, 5}, {6, 7, 8, 9}}
// 多种声明方式
int[] arr1[] = {{1, 2, 3}, {4, 5}, {6, 7, 8, 9}}
int[][] arr1 = {{1, 2, 3}, {4, 5}, {6, 7, 8, 9}}

// 根据数组在内存中的结构,下面的写法是被允许的
String strArrMem0[][] = new String[3][];
// 因此下面的写法是错误的, 因为二维数组实际上在内存结构上是一维数组。只不过数组的元素也是数组
String strArrMem1[][] = new String[][4];  
String strArrMem2[3][4] = new String[3][4] {{1, 2, 3}, {4, 5}, {6, 7, 8, 9}};

// 一些常见的错误写法
// 没有给定数组大小
String strArr0[] = new String[];
// 声明式数组,数字不应该出现在声明的中括号里
String strArr1[2] = new String[];
// 动态与静态数组初始化不能混用,否则报错
String strArr2[] = new String[3]{"s0", "s1", "s2"}

你可能感兴趣的:(Java 二维数据的几种写法)