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)