java对象判空写法null == obj

java对象判空时需使用null == obj。不能使用obj.equals(null),因为我们判空的前提是对象可能是null,null去调用equals方法显然是会抛出空指针异常。举例如下:

package demo;

public class ObjectEqualsDemo {

    public static void main(String[] args) {
        Object obj = getObj(0);
        System.out.println(obj.equals(null));
        System.out.println(obj == null);
        System.out.println(null == obj);

    }

    public static Object getObj(int i) {
        if (i == 0) {
            return null;
        } else {
            return new Object();
        }

    }
}

当getObj(0),obj为null时,打印结果如下:

Exception in thread "main" java.lang.NullPointerException
    at demo.ObjectEqualsDemo.main(ObjectEqualsDemo.java:7)

当getObj(1),obj不为null时,打印结果如下:

false
false
false

 

posted @ 2020-08-25 23:03  一首简单的歌  阅读(3991)  评论(0编辑  收藏  举报