我在许多地方都看到过常数值首先使用,然后是变量,例如(" ram")。等于(a),在许多地方我看到的地方首先使用该变量,然后使用它们要比较的常数值,例如 A.Equals(" Ram")。
A.Equals(" RAM")和(" RAM")之间有什么区别。等于(a)?哪一个最好使用?为什么?
当允许变量a
为null
时,第一种样式在情况下更安全,因为您可以跳过null
检查。
写
if (a.equals("ram")) { ... }
您必须确保a
不是null
,以避免null指针异常。这不是必需的
if ("ram".equals(a)) { ... }
因为需要equals()
方法来处理null
参数而不抛出例外:
对于任何非零参考值
x
,x.equals(null)
应返回false
。
(" ram")。等于(a)更好。即使a为null,代码也永远不会破坏。使我们免于null指针异常。