返回空(实体)列表或null更好吗?



一种方法正在返回一个可能为空的人列表。

最好返回空列表或仅 null

有些人可能会认为这是一个意见问题,但我想知道什么是新应用程序的最佳策略?

public List<PersonEntity> findByName(List<String> names) {
    List<PersonEntity> list = new ArrayList<PersonEntity>();
    ...JPA-stuff getting that list
    return list;
}

返回空。零是易于处理的空吗?

public List<PersonEntity> findByName(List<String> names) {
    List<PersonEntity> list = null;
    ...JPA-stuff getting that list
    return list;
}

我觉得这又可能是一个意见问题,但是我喜欢返回空套,并避免如果可以的话,则必须处理空。

这一切都取决于您对此列表的处理,但是可以说,一旦取回列表,就需要迭代它。

如果它是空套,则尝试迭代,它在列表中没有看到任何东西,您还可以。

 result = findByName(names);
 //...safe to loop through result

如果无效,则尝试迭代,您会得到例外,因此需要先检查Null并添加特殊处理。

result = findByName(names);
if (result != null)
{
    //...handle stuff (now it is safe to loop through result)
}
else
{
    //..special handling if needed
}

总的来说,这取决于您对数据的做法,并且如果您可以不检查空集(例如我的第一个示例)。

相关内容

  • 没有找到相关文章

最新更新