【发布时间】:2014-05-16 15:29:43
【问题描述】:
我正在 java-8 中测试新的 Stream API 并想检查 10000 次随机硬币翻转的结果。到目前为止,我有:
public static void main(String[] args) {
Random r = new Random();
IntStream randomStream = r.ints(10000,0, 2);
System.out.println("Heads: " + randomStream.filter(x -> x==1).count());
System.out.println("Tails: " + randomStream.filter(x -> x==0).count());
}
但这会引发异常:
java.lang.IllegalStateException: stream has already been operated upon or closed
我明白为什么会发生这种情况,但是如果我只能使用一次流,我如何打印正面和反面的计数?
【问题讨论】:
-
我认为这个问题在这个线程 stackoverflow.com/questions/19803058/… 上得到了解决(并希望得到解决)
标签: java java-8 java-stream