【发布时间】:2018-10-15 02:52:27
【问题描述】:
这是我的代码:
final ArrayList<DcpDealerQuotaModel> dealerQuotas = (ArrayList)getSearchResults(actionEvent);
Map<PointOfServiceModel,List<DcpDealerQuotaModel>> dealerQuotaMap =
dealerQuotas.stream().filter(item->(item.getDealer() == null || item.getDealer().getName().isEmpty())).collect(Collectors.groupingBy(DcpDealerQuotaModel::getDealer));
当我执行debug查看dealerQuotas列表中的数据时,它显示它的大小为8并且每个DcpDealerQuotaModel的dealer属性不为null,但只有在执行getter方法时才会加载dealer。当我调用dealerQuotas.stream().filter(item->(item.getDealer() == null || item.getDealer().getName().isEmpty()))时,它会过滤所有dealerQuotas并返回null ,为什么?
【问题讨论】:
标签: filter java-stream lazy-loading