一:多维数组初始化两种方式:
1.静态初始化:
int a[][] = new int[][]{{1,2,3},{1,2},{3}};
2.动态初始化:
①String[][] names = new String[2][1];
②String[][] names = new String[4][];
同时还需指定 每行 有多少列。
names[0] = new String[3];
names[1] = new String[3];
names[2] = new String[2];
names[3] = new String[1];
二:多维数组的内存结构:
以二维数组为例:
三:数组常见异常
1.数组下标越界的异常:java.lang.ArrayIndexOutOfBoundsException
2.空指针 的异常:NullPointerException
①
②
String[] str = new String[4];
System.out.println(str[3].toString());
什么也没指向,所以空指针
③
int[][] j = new int[2][];
j[1][0] = 12;
第二行还没确定有几列,现在j[1] 指向的是null