Я тестирую новый Stream
API в java-8 и хочу проверить результат 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
Я понимаю, почему это происходит, но как я могу напечатать счетчик для голов и хвостов, если я могу использовать поток только один раз?