ImmutableJS中的Iterable和Collection之间有什么区别

时间:2016-03-09 16:52:01

标签: immutable.js

我已经阅读了文档,但这两者之间的区别对我来说并不清楚(特别是因为他们共享很多相同的运算符)

看一些解释差异的例子也很棒。一个比另一个更“普通”吗?

1 个答案:

答案 0 :(得分:1)

首先,Collection扩展Iterable,所以可以说,每个Collection实例也是Iterable

Collection可以被视为具体化的有限数据集。在Iterable界面之上,它定义了方法和成员,例如sizelastequals和'hashCode`。

Iterable表示您可以迭代的内容。在Collections的顶部,这包括延迟生成的序列(可能是无限的!例如immutable.Repeat能够构造无限的序列。)。出于这个原因,sizelast在这里没有多大意义,equalshashCode会非常棘手,可能不值得。