字符串文字应该在LHS上

时间:2015-07-22 09:16:19

标签: java string equals string-comparison

System.out.println("foo".equals(myString)?"Equal":"Not equal");  

我知道将String文字放在左侧,正确处理null支票。是否有任何其他性能因素,或者是#34;首选"比较时使用String文字的方式?

3 个答案:

答案 0 :(得分:3)

除了避免空指针之外,Yoda condition没有其他好处(这也是一个值得商榷的问题。不是一个干净的优势)。它显然会破坏你的代码的可读性(至少对我而言)。

答案 1 :(得分:1)

这只是为了避免空指针异常,以防另一个字符串为空。

答案 2 :(得分:0)

这是比较字符串文字的一种更优雅的方式,因为它避免了必须进行明确的null检查。没有性能影响。

你应该在适当的时候使用它。它向您的代码发信号通知您已经考虑过null

如果你现在发现它不可读,那就把它归结为缺乏经验。