日期:2014-05-20  浏览次数:20726 次

数组赋值问题,
请问int[] i = null;和int[] i = {};两个一样吗

------解决方案--------------------
不一样,前者只是声明了一个数组,并没有给数组引用分配内存地址,所以执行i.length会报空指针错误
后者声明并实现了一个空的数组,给数组引用i分配了内存地址,所以i.length输出为0
Java code

 int[] i = null;
        int[] j = {};
        System.out.println(""+i.length);//空指针异常,应该注解
        System.out.println(""+j.length);