Java (null!=x)和(x!=null)之间有什么区别吗

Java (null!=x)和(x!=null)之间有什么区别吗,java,if-statement,boolean-expression,Java,If Statement,Boolean Expression,我在看java编程视频教程,其中提到: if(null != x){ } 像上面那样使用它是一种好的做法吗 它与: if(x != null){ } 你会想用第二个 两者都做相同的事情…比较A和B,或者比较B和A-两者都意味着相同的事情 使用x!=空,因为这更像我们这样说 你可以问我“x不是空的吗?”这似乎比“x不是空的吗?”更自然,这对我们来说更有意义 我认为最常用的方法是后者,但两者的效果相同 没有区别,我发现如果(x!=null)更常见。有些人喜欢将null放在第一位,以防键入null

我在看java编程视频教程,其中提到:

if(null != x){
}
像上面那样使用它是一种好的做法吗

它与:

if(x != null){
}

你会想用第二个

两者都做相同的事情…比较A和B,或者比较B和A-两者都意味着相同的事情

使用
x!=空
,因为这更像我们这样说


你可以问我“x不是空的吗?”这似乎比“x不是空的吗?”更自然,这对我们来说更有意义

我认为最常用的方法是后者,但两者的效果相同

没有区别,我发现
如果(x!=null)
更常见。有些人喜欢将
null
放在第一位,以防键入
null=x
。但是比较会产生相同的结果。在
==
if(null==x)
的情况下,如果出现类似
if(x=null)
的打字错误,则可以防止您意外地将
null
分配给
x
。但是在
的情况下=
这个错误不能犯,所以你可以自由选择你想要的方式(但是如果你开始使用
null==x
,你可能也应该使用
null!=x
)。@MadProgrammer True,但是大多数时候它无法编译,因为赋值表达式的计算结果是非布尔类型。在C语言中,这种输入错误总是会产生有效的代码。@antoh它可能发生,但不太可能
if(x=null)
只有在
x
Boolean
(大写
B
)时才合法。否则表达式类型将不是布尔型,或者
null
无法分配给
x
。您可以问我“x不是null吗?”这似乎比“Is null不是x?”更自然-这就是为什么
value==variable
被称为:)哈哈,这是一个非常酷的链接。非常有趣的是,“yoda条件”的问题是,我们可以在Java程序中使用
do
,但不能
try
…对不起,也许你还没有看过电影…“不,试试看。做……或者不做。没有尝试。”:)一开始没听清楚,哈哈,很好