Java1.8解决空指针比较问题

来源:互联网 发布:一加x淘宝 编辑:程序博客网 时间:2024/05/21 05:08

在编程中遇到如下情况你该如何处理?

Integer s=null;Integer t=1;//如何比较他们是否相等?//那么现在呢?Integer s=1;Integer t=null;//如果你使用equals() s.equals(t); //会爆出如下Exception in thread "main" java.lang.NullPointerException//那么在java1.8之前你该如何比较呢?   public boolean isEquals(Integer s, Integer t) {        if (s == null || t == null) {            return s == t;        }        return s.equals(t);    }

在java1.8有了Optional类,他的Optional.ofNullable();会将null空指针封装成Optional.empty对象,此时就可以进行比较了

        Integer i=null;        Integer j=1;        System.out.println(Optional.ofNullable(i).equals(Optional.ofNullable(j)));        //false        Integer i=130;        Integer j=130;        System.out.println(Optional.ofNullable(i).equals(Optional.ofNullable(j)));        //true
原创粉丝点击