Oh *_*oon 2 java if-statement terminology conditional-statements
我试图报告一些代码增强,但是,我不太确定这个项目的名称是什么.基本上,它不是做a conn == null,而是null == conn为了可读性.
之前:
if (conn == null){
if (log.isDebugEnabled()){
log.debug("Failed to get a DB Connection");
}
}
Run Code Online (Sandbox Code Playgroud)
后:
if (null == conn){
if (log.isDebugEnabled()){
log.debug("Failed to get a DB Connection");
}
}
Run Code Online (Sandbox Code Playgroud)
这不是为了可读性,而是为了防止意外分配而不是比较.
如果你不小心写了:
if (conn = null)
Run Code Online (Sandbox Code Playgroud)
在C或C++中,将设置conn为null然后使用该值作为条件.尽管在那里没有必要,但这已被延续到Java中.
反过来说,编译器将其捕获为尝试分配给常量,因此它甚至不会编译.
至于它叫什么,我从来没有看到它给出一个特定的名称.如果您解释它,您可以将其称为您想要的.我喜欢,Accidental assignment avoidance因为我可以缩短它triple-a.