1.如果只是对数组进行声明,没有进行创建,则该数组为null,调用length()函数和for函数时都会出现空指针异常,代码和运行结果如下:
package charactor;
//null数组不能使用.length()函数,但是空数组可以,会返回0
public class Test3 {
static int a[];
public static void main(String[] args) {
System.out.println(a == null);
System.out.println(a.length);
// for (int i : a) {
// System.out.println(i);
// }
}
}
package charactor;
//null数组不能使用.length()函数,但是空数组可以,会返回0
public class Test3 {
static int a[];
public static void main(String[] args) {
System.out.println(a == null);
// System.out.println(a.length);
for (int i : a) {
System.out.println(i);
}
}
}
运行结果均如下:
2.如果对数组进行声明并创建空数组,则数组不为null,length()函数以及for函数均可以正常运行,前者为0,后者没有结果,均无空指针异常出现。代码如下:
package charactor;
//null数组不能使用.length()函数,但是空数组可以,会返回0
public class Test3 {
static int a[] = new int[0];
public static void main(String[] args) {
System.out.println(a == null);
System.out.println(a.length);
for (int i : a) {
System.out.println(i);
}
}
}
运行结果如下: