El siguiente código inicializa estáticamente una matriz irregular.
int intArray[][] = {
{1,2}, {11}, {21,22,23}, {31,32,33}};
Es problemático inicializar matrices irregulares dinámicamente. No puede utilizar la nueva instrucción int [4] [3]. En su lugar, inicialice las matrices de alta dimensión primero y luego inicialice las matrices de baja dimensión una por una. el código se muestra a continuación:
int intArray[][] = new int[4][]; //先初始化高维数组为4
// 逐一初始化低维数组
intArray[0] = new int[2];
intArray[1] = new int[1];
intArray[2] = new int[3];
intArray[3] = new int[3];
class test09
{
public static void main(String[] args)
{
int intArray[][] = new int[4][]; //初始化高维数组为4
//逐一初始化低维数组
intArray[0] = new int[2];
intArray[1] = new int[1];
intArray[2] = new int[3];
intArray[3] = new int[3];
//for 循环遍历
for(int i = 0; i < intArray.length; i++){
for(int j = 0; j < intArray[i].length; j++){
intArray[i][j] = i + j;
}
}
//for-each循环遍历
for(int[] row : intArray){
for(int val : row){
System.out.print(val + "\t");
}
System.out.println();
}
}
}