Skip to content

Commit 4b526eb

Browse files
authored
Merge pull request #1749 from jxnu-liguobin/patch-3
[zh] Update collection overview
2 parents ae4faf4 + 74651ef commit 4b526eb

File tree

1 file changed

+9
-10
lines changed

1 file changed

+9
-10
lines changed

_zh-cn/overviews/collections/overview.md

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -29,30 +29,29 @@ Scala 集合类系统地区分了可变的和不可变的集合。可变集合
2929

3030
然而,像没有前缀的Set这样的关键字, 仍然指的是一个不可变集合,然而`mutable.Set`指的是可变的副本(可变集合)。
3131

32-
集合树的最后一个包是`collection.generic`。这个包包含了集合的构建块。集合类延迟了`collection.generic`类中的部分操作实现,另一方面集合框架的用户需要引用`collection.generic`中类在异常情况中
32+
集合树的最后一个包是`collection.generic`。这个包包含了集合的构建块。集合类延迟了`collection.generic`类中的部分操作实现,另一方面,集合框架的用户只需要在特殊情况下引用`collection.generic`
3333

34-
为了方便和向后兼容性,一些导入类型在包scala中有别名,所以你能通过简单的名字使用它们而不需要import。这有一个例子是List 类型,它可以用以下两种方法使用,如下:
34+
为了方便和向后兼容性,一些导入类型在包scala中有别名,所以你能通过简单的名字使用它们而不需要import。这有一个例子是`List`类型,它可以用以下两种方法使用,如下:
3535

3636
scala.collection.immutable.List // 这是它的定义位置
3737
scala.List //通过scala 包中的别名
38-
List // 因为scala._
39-
// 总是是被自动导入。
38+
List // 因为scala._ 总是被自动导入。
4039

4140
其它类型的别名有: [Traversable](https://www.scala-lang.org/api/{{ site.scala-212-version }}/scala/collection/Traversable.html), [Iterable](https://www.scala-lang.org/api/{{ site.scala-212-version }}/scala/collection/Iterable.html), [Seq](https://www.scala-lang.org/api/{{ site.scala-212-version }}/scala/collection/Seq.html), [IndexedSeq](https://www.scala-lang.org/api/{{ site.scala-212-version }}/scala/collection/IndexedSeq.html), [Iterator](https://www.scala-lang.org/api/{{ site.scala-212-version }}/scala/collection/Iterator.html), [Stream](https://www.scala-lang.org/api/{{ site.scala-212-version }}/scala/collection/immutable/Stream.html), [Vector](https://www.scala-lang.org/api/{{ site.scala-212-version }}/scala/collection/immutable/Vector.html), [StringBuilder](https://www.scala-lang.org/api/{{ site.scala-212-version }}/scala/collection/mutable/StringBuilder.html), [Range](https://www.scala-lang.org/api/{{ site.scala-212-version }}/scala/collection/immutable/Range.html)。
4241

43-
下面的图表显示了`scala.collection`包中所有的集合类。这些都是高级抽象类或特性,它们通常具备和不可变实现一样的可变实现。
42+
下图显示了`scala.collection`包中所有的集合类。这些都是高级抽象类或特质,它们通常具备和不可变实现一样的可变实现。
4443

4544
[![General collection hierarchy][1]][1]
4645

47-
下面的图表显示scala.collection.immutable中的所有集合类
46+
下图显示了`scala.collection.immutable`中所有的集合类
4847

4948
[![Immutable collection hierarchy][2]][2]
5049

51-
下面的图表显示scala.collection.mutable中的所有集合类
50+
下图显示了`scala.collection.mutable`中所有的集合类
5251

5352
[![Mutable collection hierarchy][3]][3]
5453

55-
图传奇:
54+
图例:
5655

5756
[![Graph legend][4]][4]
5857

@@ -76,7 +75,7 @@ Scala 集合类系统地区分了可变的和不可变的集合。可变集合
7675

7776
所有这些集合类都通过相同的途径,用toString方法展示出来。
7877

79-
Traversable类提供了所有集合支持的API,同时,对于特殊类型也是有意义的。例如,Traversable类 的map方法会返回另一个Traversable对象作为结果,但是这个结果类型在子类中被重写了。例如,在一个List上调用map会又生成一个List,在Set上调用会再生成一个Set,以此类推。
78+
Traversable类提供了所有集合支持的API,同时,对于特殊类型也是有意义的。例如,`Traversable`类的`map`方法会返回另一个`Traversable`对象作为结果,但是这个结果的类型在子类中被重写了。例如,在一个`List`上调用`map`会又生成一个`List`,在`Set`上调用会再生成一个`Set`,以此类推。
8079

8180
scala> List(1, 2, 3) map (_ + 1)
8281
res0: List[Int] = List(2, 3, 4)
@@ -85,7 +84,7 @@ Traversable类提供了所有集合支持的API,同时,对于特殊类型也
8584

8685
在集合类库中,这种在任何地方都实现了的行为,被称之为返回类型一致原则。
8786

88-
大多数类在集合树中存在这于三种变体:root, mutable 和immutable。唯一的例外是缓冲区特征,它仅在于mutable集合。
87+
大多数类在集合树中存在这于三种变体:root, mutable和immutable。唯一的例外是缓冲区特质,它仅在于mutable集合。
8988

9089
下面我们将一个个的回顾这些类。
9190

0 commit comments

Comments
 (0)