gpt4 book ai didi

java - 迭代器中的 NullPointerException

转载 作者:行者123 更新时间:2023-11-30 03:55:14 25 4
gpt4 key购买 nike

我有一个静态方法,我获取推文列表和城镇名称作为参数,然后从列表中删除不是源自该城镇的推文或发布该推文的用户不是源自该城镇的推文。 .

这是我的代码:

public static void removeIncorrectTowns(List<Status> tweets, final String town) {
if (town.isEmpty()) {
return;
}

Iterator<Status> it = tweets.iterator();
while (it.hasNext()) {
Status status = it.next();
if ((status.getPlace() == null && (status.getUser().getLocation() == null || !status.getUser().getLocation().equalsIgnoreCase(town)))
|| !status.getPlace().getName().equalsIgnoreCase(town)) {
it.remove();
}
}
}

我遇到的问题是,我在第 62 行(即包含 it.remove() 的行)处遇到了 NullPointerException

迭代器怎么可能为空?仅此一点对我来说毫无意义,因为 while 循环检查是否 it.hasNext()

最佳答案

如果 status.getPlace() 为 null 并且 status.getUser().getLocation() 不为 null 并且不等于 town,当调用 status.getPlace().getName() 时,您将在条件的最后部分获得 NPE。

关于java - 迭代器中的 NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23398323/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com