在检查null时,我使用以下方法:
String str; if(str == null){ //... }
但我也看到了这一点:
if(null == str){ //... }
使用一个相对于另一个有什么优势吗?还是只是为了提高可读性?
第二个版本(null == str)称为 yoda条件 。
null == str
它们都导致相同的行为,但是第二个优点是:当您忘记一个变量时,它可以防止您意外地更改变量=。在这种情况下,编译器将在该行返回错误,并且您不会再遇到一些奇怪的代码行为和调试结果。
=