Java字符串比较最佳实践



为什么这个代码是

"name".equals(person.getName());

比好

person.getName().equals("name");

我更喜欢Yoda表达式"name".equals(person.getName());,因为这意味着您不需要检查person.getName()是否为null。这节省了一点打字的时间,而且一旦你习惯了,可以说会更清晰

尽管在您的情况下,您仍然需要检查person是否不是null

因为常数"name"永远不可能是null
"name".equals(null)

有效并且将返回false,而

String personName = null;
personName.equals("name");

将抛出NullPointerException

"name".equals(person.getName());

此代码将避免出现Null指针异常。

最新更新