这是因为stream的terminal方法只能使用一次,如果再次使用会报错,如下代码已经用了count()方法了,再用iterator()方法就报错了。

public static void main(String[] args) {
IntStream ints = new Random().ints(5);
System.out.println(ints.count()); // IntStream 只能使用一次,所以后面再调用报错了
PrimitiveIterator.OfInt iterator = ints.iterator();
System.out.println(iterator.next());
while (iterator.hasNext()){
System.out.println(iterator.next());
}
}