最佳答案
我有一个由 Java8流表示的数据集:
Stream<T> stream = ...;
我可以看到如何过滤它得到一个随机子集-例如
Random r = new Random();
PrimitiveIterator.OfInt coin = r.ints(0, 2).iterator();
Stream<T> heads = stream.filter((x) -> (coin.nextInt() == 0));
我还可以看到如何减少这个流以获得,例如,表示数据集的两个随机部分的两个列表,然后将它们返回到流中。 但是,有没有一种直接的方法可以从最初的一个生成两个流呢
(heads, tails) = stream.[some kind of split based on filter]
谢谢你的建议。