【发布时间】:2011-10-10 11:20:31
【问题描述】:
我正在考虑返回空数组的最佳方式,而不是null。
foo()和bar()有什么区别吗?
private static File[] foo() {
return Collections.emptyList().toArray(new File[0]);
}
private static File[] bar() {
return new File[0];
}
【问题讨论】:
-
foo()建议仅隐藏代码正在执行的操作。 -
@Carlos,我承认这很复杂,但这两种方法本质上是等价的,对吧?
-
如果您忽略可读性,则等效...您可以使几乎所有事情复杂化。返回零的最佳方法是什么?
return 15 - 3*5 + 0;? -
@Carlos,点了!哈哈...
-
请注意:
foo()将返回作为传递给toArray的参数创建的数组!