数组异常分为索引异常和空指针异常两类:
1.索引异常,数组的索引只能在[0,数组长度)内取值,否则会越界,发生索引异常。
2.空指针异常
常见的空指针异常有以下三种情况:
package start;
public class YuFa {
public static void main(String[] args) {
// 空指针
// 情况一:一维数组
int[] a = {1,23,3,4};
System.out.println(a[0]);
a = null;
// 此时栈空间中a的值为null,没有指向的地址,是一个空指针
// System.out.println(a[0]);报错
// 情况二:二维数组
int[] b[] = new int[4][];
System.out.println(b[0]);//地址值为空值,是一个空指针,所以输出null
// System.out.println(b[0][0]);报错,空指针异常
// 情况三:对象调用方法时
String[] s = new String[] {"123","345","456"};
System.out.println(s[0].toString());
s[0] = null;
// System.out.println(s[0].toString()); 报错,空指针异常
}
}
京公网安备 11010502036488号