1.问题:
判断数组为空还是长度为0好
2.源代码:
public class TestArray { public static void main(String[] args) { int b[]=null; int a[] = new int [10]; /*1、打印*/ System.out.println("a数组的长度:"+a.length); //System.out.println("b数组的长度:"+b.length);//会空指针异常; /*2、赋值,遍历输出,把a中元素给b*/ for (int i=0;i<a.length;i++){ a[i]=i; System.out.println("a中元素:"+a[i]); b=a; } /*3、打印b:*/ if (null!=b&&0!=b.length){ System.out.println("b数组的长度"+b.length); } } }
讯享网
3.截图:

4.总结:
到底哪个好?看使用的场合:
①如果int a[]=null,类似,我没有房子;
②如果int b[].length=0,类似,我有一套房子,但是是空着的;
两个效果明显不一样,如果无差别的情况下,判断一个数组为空,建议使用长度length为0来判断,避免后面调用的时候空指针;
③把图中13行注销掉,再加上图中“3、打印b”之前的if中的判断条件,就可以避免if里面报错;
④切记:null!=b要放在前面,0!=b.length()要放在后面;因为,如果b为空,就不可能有长度,一定会报
NullPointerException;
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/44016.html