null == a 和 a == null 的区别,该怎么处理

2025-03-31 02:03:14
推荐回答(4个)
回答1:

两者是一样的,谁先谁后都没关系,有些只是因为习惯问题,比如说从C++转过来的。你看下这段代码:

String a = null;
if (a == null) {
System.out.println("1.a为空");
} else {
System.out.println("1.a不为空");
}

if (null == a) {
System.out.println("2.a为空");
} else {
System.out.println("2.a不为空");
}

运行结果如下:

这就说明两种写法都没错。

回答2:

假如你少写了个等号,写成a = null是不会报错的,但是null = a,会报错,所以习惯写null == a更好

回答3:

null==a是指null 的值等于a,a==null是指a的值等于null,具体一点就前者是指null的值是等于a,后者是指a的值是等于空,前者null的值不为空,后者a的值是等于空

回答4:

没什么区别