在 Swift 编程语言中,集合类型 Set
用于存储一组唯一且无序的对象。每个存储在 Set 中的元素必须遵循 Hashable 协议,这意味着它们必须有一个稳定的哈希值以确保集合内部操作的效率。
以下是在 Swift 中创建和使用 Set 的基本要点:
创建 Set
// 创建一个空 Set 并指定元素类型
var emptySet: Set<Int> = []
// 直接初始化一个包含元素的 Set
var numbersSet = Set([1, 2, 3, 4, 5])
// 使用数组字面量创建 Set
var stringSet: Set<String> = ["apple", "banana", "cherry"]
// 使用 arrayLiteral 创建 Set
var anotherStringSet = Set(arrayLiteral: "dog", "cat", "bird")
// 自动推断类型
let inferredTypeSet = Set(1...10)
Set 的基本操作
添加元素:
numbersSet.insert(6)
移除元素:
if let removedNumber = numbersSet.removeFirst() { print("Removed element:", removedNumber) }
检查是否包含某个元素:
if numbersSet.contains(3) { print("Set contains the number 3.") }
合并两个 Set:
let setA = Set([1, 2, 3]) let setB = Set([3, 4, 5]) let combinedSet = setA.union(setB)
获取 Set 的大小(元素数量):
print("Numbers count:", numbersSet.count)
清空 Set:
numbersSet.removeAll()
特性
- Set 中的元素是唯一的,添加重复元素不会改变 Set 的大小。
- Set 内部不保证元素的顺序,即使你在初始化时指定了顺序,也无法预测检索时的顺序。
- 因为 Set 是无序的,所以不能通过索引访问元素。
- Set 支持多种集合操作,如并集、交集、差集等。