使用ArrayUtils.nullToEmpty
来自commons-lang
于阵列库
for( Object o : ArrayUtils.nullToEmpty(list) ) {
// do whatever
}
该功能存在于commons-lang
大多数Java项目中都包含的库中。
// ArrayUtils.nullToEmpty source code
public static Object[] nullToEmpty(final Object[] array) {
if (isEmpty(array)) {
return EMPTY_OBJECT_ARRAY;
}
return array;
}
// ArrayUtils.isEmpty source code
public static boolean isEmpty(final Object[] array) {
return array == null || array.length == 0;
}
这与@OscarRyz给出的答案相同,但是出于DRY的口头禅,我相信这是值得注意的。请参阅commons-lang项目页面。这是nullToEmpty
API 文档和源
commons-lang
如果尚未将Maven条目包括在您的项目中。
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.4</version>
</dependency>
不幸的是,commons-lang
没有为List
类型提供此功能。在这种情况下,您将必须使用如前所述的辅助方法。
public static <E> List<E> nullToEmpty(List<E> list)
{
if(list == null || list.isEmpty())
{
return Collections.emptyList();
}
return list;
}
null
与空集合不同。