位置:首页 > > Scala集合

Scala集合

Scala有一组丰富的集合库。集合是对事物的容器。这些容器可被测序,线性集像List, Tuple, Option, Map等集合的项目可具有元素的任意数量或有界到零个或一个元素(例如,Option)。

集合可能是严格或懒惰。懒集合有可能不消耗内存,直到他们被访问,就像范围元素。此外,集合可以是可变的(引用的内容可以更改)或不变(一个引用的东西指从未改变)。需要注意的是不可变的集合可能包含可变项。

对于一些问题,可变集合更好地工作,并为不可变集合更好地工作。如果有疑问,最好是先从一个不变的集合,如果需要可变进行更改。

本章给出最常用的集合类型对这些集合的信息和使用最频繁的操作。

SN 集合使用说明
1 Scala Lists
Scala的List[T]是T类型的链表
2 Scala Sets
集是相同类型的配对的不同元素的集合。
3 Scala Maps
映射是键/值对的集合。任何值可以根据它的键进行检索。
4 Scala Tuples
不像数组或列表,元组可以容纳不同类型的对象。
5 Scala Options
Option[T] 提供了一种容器,用于给定类型的零个或一个元素。
6 Scala Iterators
迭代不是集合,而是一种由一个访问的集合之一的元素。

示例:

下面的代码片段是一个简单的例子来定义所有上述集合类型:

// Define List of integers.
val x = List(1,2,3,4)

// Define a set.
var x = Set(1,3,5,7)

// Define a map.
val x = Map("one" -> 1, "two" -> 2, "three" -> 3)

// Create a tuple of two elements.
val x = (10, "Scala")

// Define an option
val x:Option[Int] = Some(5)