记录一个Coding中小的也是不常注意的问题点。equals经常用到字符串的比较重,当然变量与常量的比较也是经常用到的。那么与常量比较时,变量是放到equals前面好呢还是放到后面好呢?正常情况下,两个变量的比较无所谓哪个在前面,但是如果存在特殊情况,看下面的例子:
String a = null;
System.out.println("a".equals(a));
当变量a为null并且在equals的后面时,输出结果是false。
String a = null;
System.out.println(a.equals("a"));
当变量a为null并且在equals的前面时,结果会报空指针异常。
综上:变量与常量比较时,变量应放在equals的后面。或者两个变量比较时把可能取到null的变量放到equals的后面。同样,使用null进行判断时推荐把null放在前面,比如 null != a;
本文探讨了Java中使用String的equals方法进行比较时的一个常见误区:即变量与常量的位置顺序对结果的影响。通过示例说明了为了避免空指针异常,应该将变量置于equals方法的后面。
2861

被折叠的 条评论
为什么被折叠?



