为了账号安全,请及时绑定邮箱和手机立即绑定

Java中null==1,为什么会报错?

Java中null==1,为什么会报错?

慕仙森 2019-03-12 14:15:48
if(a=1){}当a=null的时候,会报错,为什么呀?是不是每一个判断都要先判断a是否等于null?    String a=null;    if (a.equals("")) {        System.out.println(1);    }
查看完整描述

5 回答

?
ibeautiful

TA贡献1993条经验 获得超5个赞

首先,if(a=1){}这个if条件语句你就写错了,应该写成if(a==1){}

其次,对于String的引用类型a如果为空,如果调用a的方法会抛空指针

  


String a=null;

if (a.equals("")) {

    System.out.println(1);

}

如果你这样写,必须要判断a非null,如果你不想写判断a非null这个操作,可以写成


String a=null;

if("".equals(a)){

     System.out.println(1);

}


查看完整回答
反对 回复 2019-04-25
?
跃然一笑

TA贡献1826条经验 获得超6个赞

if语句括号内写的是判断表达式,结果是true或false,你写的a=1是赋值表达式


查看完整回答
反对 回复 2019-04-25
?
千万里不及你

TA贡献1784条经验 获得超9个赞

括号里是bool型才对,你那个是赋值了


查看完整回答
反对 回复 2019-04-25
  • 5 回答
  • 0 关注
  • 4633 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信