Iterator versus Stream of Java 8
- 论坛
- Iterator versus Stream of Java 8
18 浏览
Iterator versus Stream of Java 8
为了利用Jdk 8中java.util.stream
中包含的各种查询方法,我尝试设计领域模型,其中与*
多重性(零个或多个实例)相关的getter方法返回一个Stream
,而不是Iterable
或Iterator
。
我疑惑的是相比于Iterator
,Stream
是否会导致额外的开销?
那么,将领域模型与Stream
结合是否有任何不利之处?
或者,我应该总是返回一个Iterator
或Iterable
,并让最终用户通过使用StreamUtils
将该迭代器转换为流进行决策?
注意,返回一个Collection
不是一个有效的选项,因为在这种情况下,大多数关系都是惰性的且大小未知。