Java 流计数与toList大小

Java 流计数与toList大小,java,java-stream,Java,Java Stream,哪个更快 myCollection.stream().filter(somePredicate).count(); vs 显然,第二个似乎更慢。但是想知道是否有任何内部优化?第二个代码片段需要创建一个列表实例,并将流的所有元素添加到其中。当然,这比只计算流的元素数量要慢,这是第一个代码片段所做的 第二个代码段需要创建一个列表实例,并将流的所有元素添加到该实例中。当然,这比只计算流的元素数量要慢,这是第一个代码片段所做的 你有没有理由认为第二个应该更快?还是你没想到会有这样的结果?第二个例子显然

哪个更快

myCollection.stream().filter(somePredicate).count();
vs


显然,第二个似乎更慢。但是想知道是否有任何内部优化?

第二个代码片段需要创建一个
列表
实例,并将
的所有元素添加到其中。当然,这比只计算
的元素数量要慢,这是第一个代码片段所做的

第二个代码段需要创建一个
列表
实例,并将
的所有元素添加到该实例中。当然,这比只计算
的元素数量要慢,这是第一个代码片段所做的

你有没有理由认为第二个应该更快?还是你没想到会有这样的结果?第二个例子显然需要做更多的工作,所以对我来说听起来相当简单。你有什么理由认为第二个应该更快?还是你没想到会有这样的结果?第二个例子显然需要做更多的工作,所以对我来说听起来相当简单。
myCollection.stream().filter(somePredicate).collect(Collectors.toList()).size();