我有两个列表:
List<Integer> list1 = ...
List<Integer> list2 = ...
我有以下类(class):
class Pair {
public Pair(final Integer i1, final Integer i2) {
...
}
}
是否可以使用 Java8 流将两个输入列表组合成一个 List<Pair>
?这可以通过双 for 循环轻松完成,但我想知道这是否适用于 Java8 流。
最佳答案
list1.stream()
.flatMap(i1 -> list2.stream()
.map(i2 -> new Pair(i1, i2)))
.collect(Collectors.toList());
关于java - 使用 Stream API 对两个集合进行叉积,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32296210/