gpt4 book ai didi

没有空对象的java集合

转载 作者:行者123 更新时间:2023-12-02 09:50:17 25 4
gpt4 key购买 nike

java中有没有不会添加空对象的集合?给定一个项目列表,在数据库中查询这些项目,当从数据库返回结果时,如果该项目确实存在于数据库中,我会将其添加到结果列表中,如果不存在,则数据库返回 null,然后我将丢弃它。

我有以下代码执行此操作:

reqIds.forEach(
reqId -> {
columnValueMap.clear();
columnValueMap.put("request_id", reqId);
EventAudit auditRecord =
pollDatabaseFindByIdAndKey(
EventAudit.class, columnValueMap);

if (auditRecord != null) {
auditMap.put(auditRecord.getRequestId(), auditRecord);
}
});

我知道我可以使用Java流过滤器来过滤掉null,但只是想知道是否有任何智能集合会自动拒绝null对象,所以我不需要进行额外的Null检查

最佳答案

您可以使用 apache commons 集合来执行此操作,

import java.util.List;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.collections4.PredicateUtils;
import com.google.common.collect.Lists;

public class Test {
public static void main(String[] args) {
List<Integer> l = Lists.newArrayList(1, 2, 3, null, 7, null, 8, null);
CollectionUtils.filter(l, PredicateUtils.notNullPredicate());
System.out.println(l);
}
}

上面的代码将打印输出,如下所示,

[1, 2, 3, 7, 8]

关于没有空对象的java集合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56363773/

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