亲宝软件园·资讯

展开

无感NullPointerException的值相等判断方法

进阶的小名 人气:0

场景:当我们需要去判断一个 入参/查库 返回的开关变量(通常是个Integer类型的)时,常常会写如下的if-else判断语句。但又会为在生产环境看到的「NullPointerException」感到困扰。遇到过这样问题的小伙伴,可以继续向下看:

public static void main(String[] args) {
   Integer a = 1;
   Integer b = null;
   if(b!=1){
      System.out.println("不等于");
   }else {
      System.out.println("等于");
   }
}

这里b=nll,直接来看「b!=1」是可以打印出「不等于」的,但结果竟是出乎意料的空指针异常:

Exception in thread "main" java.lang.NullPointerException
    at com.XXX.Controller.main(XXX.java:223)

为了避免上面的问题:

方法一:

在if分支中添加判空的逻辑:

if(null!= b && b!=1)

加载全部内容

相关教程
猜你喜欢
用户评论