早期jdk8-ea
javadocs like this表示存在java.util.stream.Streamable
界面,该Stream
界面似乎与Iterable
的{{1}}具有相同的关系Iterator
。
现在好像我们被Supplier<Stream>
所困,这当然不一样了。
Streamable
发生了什么?
答案 0 :(得分:11)
它已被删除了一段时间。 Brian Goetz给出了移除The rationale的信息:
目前唯一 实现者是Collection,以及所有其他流的方法 正在提供专门的流(chars(),codePoints(),lines()等) 方法名称比“stream”更合适。所以我想我们 应该删除Streamable并保留stream()/ parallel()方法 收集(或者可能将它们移动到Iterable)。
我开始认为Streamable并没有承受它的重量。 ID 喜欢考虑丢弃Streamable,此时最基本的 parallel()的实现在Collection中,我也建议我们 考虑将其重命名为parallelStream()。
在this other post他补充道:
如果所有可迭代的内容都是有效的 Streamable(因为Iterable有一个stream())方法,以及一切 Streamable实际上是可以迭代的(因为你可以转动Spliterator 进入迭代器),那么他们不是同样的抽象吗?