這篇教程屬於 Swift 系列
集合(Sets)用於創建不重複項目的集合。
雖然數組可以包含多個相同項目,但集合中只包含唯一的項目。
你可以用以下方式聲明一個包含整數值的集合:
let set: Set<Int> = [1, 2, 3]
或者你可以用數組初始化集合:
let set = Set([1, 2, 3])
使用 insert()
方法將項目添加到集合中:
var set = Set([1, 2, 3])
set.insert(17)
與數組不同,集合中並沒有順序或位置。項目的擷取和插入是隨機的。
將集合的內容按照順序打印的方法是將其轉換為數組,並使用 sorted()
方法:
var set = Set([2, 1, 3])
let orderedList = set.sorted()
要檢查集合是否包含一個元素,可以使用 contains(_:)
方法:
var set = Set([1, 2, 3])
set.contains(2) // true
要獲取集合中的項目數量,使用 count
屬性:
let set = Set([1, 2, 3])
set.count // 3
如果集合為空,其 isEmpty
屬性為 true
:
let set = Set([1, 2, 3])
set.isEmpty // false
要從集合中刪除一個項目,可以使用 remove(_:)
方法,並傳入要刪除的元素的值:
var set = Set([1, 2, 3])
set.remove(1)
// 現在 set 為 [2, 3]
要從集合中刪除所有項目,可以使用 removeAll()
方法:
set.removeAll()
和數組一樣,集合是按值傳遞的,這意味著如果你將它傳遞給一個函數,或者從函數中返回它,則集合會被複製。
集合非常適合執行集合運算,如交集、聯集、差集等。
以下方法對此非常有幫助:
intersection(_:)
symmetricDifference(_:)
union(_:)
subtracting(_:)
isSubset(of:)
isSuperset(of:)
isStrictSubset(of:)
isStrictSuperset(of:)
isDisjoint(with:)
集合是一種集合類型,可以在循環中進行迭代。