Scala中的基本集合类型是什么?

gre*_*man 12 collections types scala

或者换句话说,Scala中C#IEnumerable <T>的等价物是什么?我以为是Seq [T],但我已经发现,HashMap没有实现这个,所以它不可能是真的.

那么,它是什么?

om-*_*nom 20

Traversable并且Iterable是scala集合的基本特征.实际上,Iterable延伸Traversable.

来自scala api doc Iterable:

可迭代集合的基本特征.

这是所有Scala集合的基本特征,它定义了一个迭代器 方法,逐个逐步遍历集合的元素.

而且Traversable:

这是各种Scala集合的基本特征.它根据foreach方法实现了所有集合的通用行为 .

这是来自scala-lang站点的一个很好的图片,代表scala集合层次结构(分别是可变和不可变的):

在此输入图像描述

一成不变的:

在此输入图像描述

  • 和Traversable扩展了TraversableOnce(它将Iterator和Traversable联合起来)和TraversableOnce扩展了GenTraversableOnce(它将顺序集合和并行单元化). (5认同)