这个空检查有什么问题吗?
List<Foo> results = null;
results = this.getResults();
if (results == null || results.size() == 0)
{
LOGGER.warn("results empty");
}
else
{
LOGGER.warn("results:" + results.toString());
}
当 getResults 返回 null 列表时,上面的代码始终会产生以下输出。
results:[null]
我需要响应这个空场景,但不知道如何捕获它。
List<Foo> results = null;
results = this.getResults();
if (results == null || results.size() == 0)
{
LOGGER.warn("results empty");
}
else
{
LOGGER.warn("results:" + results.toString());
}
The code above always produces the following output when getResults
returns a null List.
results:[null]
I need to respond to this null scenario but don't know how to catch it.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
我认为结果列表中有一项为空值。
我认为方法是检查列表的第 0 个位置是否包含空值,如果不包含,则列表至少包含一个非空值。
或者
I think the results list has one item which is a null value.
I think the way is to check whether the list contains a null value at the the
0
th location, if not then the list contains at least one not null value.Or
根据您的输出,
getResults()
返回的 List 看起来有一个 null 元素。Based on your output, it looks like the List returned by
getResults()
has one null element.每个人都正确地认为您的列表包含一个空值。但是,我不明白为什么需要检查第一个元素是否为空。看起来更像是您需要重新考虑
getResults()
中发生的情况,并且不将 null 放入列表中。我的意思是,我们没有理由假设不能有更多的空值,或者空值位于实际对象之间。Everyone is correct that your list contains one null value. However, I don't understand why it's necessary to check to see if the first element is null. It looks more like you need to rethink what's going on in
getResults()
and not put null in the list. I mean, there's no reason for us to assume there can't more more nulls, or nulls sitting in between actual objects.