我们是否有一些终端功能将功能作为输入?我有一个内部循环,它返回一个响应,如下例所示。我希望内循环收集并发送响应,而不是将响应放在外部列表中。
DBCPConnectionPool
我希望它像:
List<A> consignments = Lists.emptyList();
IntStream.range(0, days)
.mapToObj(startDate::plusDays)
.forEach(day -> IntStream.range(0, hours)
.forEach(hour -> consignments.add(myfunction()))
);
由于forEach是一个消费者,这不会像现在这样有效,所以我们有一些简单的方法来实现它,我不知道了吗?
答案 0 :(得分:4)
如果我理解你的意图,flatMap
应该有效:
List<A> consignments =
IntStream.range(0, days)
.mapToObj(startDate::plusDays)
.flatMap(day -> IntStream.range(0, hours)
.mapToObj(hour -> myFunction()))
.collect(toList());