如何在“if”语句中编写干净的代码?

时间:2013-06-10 09:52:58

标签: java code-cleanup

更清楚的是什么?为什么? (使用Apache Commons库)

在下面的代码中,逻辑是相同的:

if(!ArrayUtils.isEmpty(someArray)) {
  some code here ...
}

//or this variant
if(ArrayUtils.isNotEmpty(someArray)) {
  some code here ...
}

非常感谢!

3 个答案:

答案 0 :(得分:2)

  1. 第二个(使用isNotEmpty)读起来像普通英语,这是它的主要优点。
  2. 如果您使用的库提供了您需要的确切功能而不是您应该使用它(在您的示例中就是这种情况)。
  3. 在您的ArrayUtils的特定情况下,检查数组是否为空或null是一种常见的情况,API设计者建议为其添加单独的函数。
  4. 任何傻瓜都可以编写计算机可以理解的代码。优秀的程序员编写人类可以理解的代码。 - Martin Fowler

答案 1 :(得分:1)

我投票选择#2。它更容易阅读。很明显,Commons已经添加了这个 完全不使用选项#1的方法。

答案 2 :(得分:0)

我也认为选项2更好,因为它更具可读性。我认为这两个选项没有任何性能差异。