这可能吗(伪Java):
someList = [
[1,2],
[3,4]
];
Stream<List<X>> a = someList.stream();
Stream<X> b = a.whatever(...);
assert b.collect(list).equals([1,2,3,4]);
更一般地说,流上是否存在可以增加流中元素数量的操作(而不是减少,如filter
does)?
Yes. flatMap
这样做。
Stream<X> b = someList.stream().flatMap(l -> l.stream());
假如说someList
is a List<List<X>>
, flatMap
会将内部列表的所有元素展平为单个 Stream。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)