gpt4 book ai didi

Java Stream API——如何减少一个循环来减少

转载 作者:行者123 更新时间:2023-12-01 16:50:19 26 4
gpt4 key购买 nike

我有以下声明:

Function<Stream<Supplier<Collection<? extends User>>>, Stream<User>> userStreamSupplier =
supStream -> {
ArrayList<User> list = new ArrayList<>();
supStream.forEach(sup -> list.addAll(sup.get()));
return list.stream();
};

是否可以将内部 lambda 中的循环转换为智能stream.reduce 操作(或其他聚合)?我尝试过各种方法,但都失败了。

您好,JG。

最佳答案

您可以使用flatMap相反:

supStream -> supStream.flatMap(supp -> supp.get().stream());

Returns a stream consisting of the results of replacing each element of this stream with the contents of a mapped stream produced by applying the provided mapping function to each element.

关于Java Stream API——如何减少一个循环来减少,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41444448/

26 4 0