【发布时间】:2010-11-01 03:01:21
【问题描述】:
考虑这一行:
if (object.getAttribute("someAttr").equals("true")) { // ....
显然这一行是一个潜在的错误,属性可能是null,我们会得到一个NullPointerException。所以我们需要将其重构为两种选择之一:
第一个选项:
if ("true".equals(object.getAttribute("someAttr"))) { // ....
第二个选项:
String attr = object.getAttribute("someAttr");
if (attr != null) {
if (attr.equals("true")) { // ....
第一个选项难读但更简洁,而第二个选项意图清晰但冗长。
就可读性而言,您更喜欢哪个选项?
【问题讨论】:
标签: java coding-style nullpointerexception code-readability