📜  Swift – 集合操作(1)

📅  最后修改于: 2023-12-03 14:47:47.785000             🧑  作者: Mango

Swift – 集合操作

在 Swift 语言中,集合是用来存储多个值的数据结构。Swift 包含三种主要的集合类型:数组、集合和字典。本文将介绍 Swift 集合的基本操作。

数组

数组是一个有序的合集。数组中的每个元素都有一个对应的数字索引,从 0 开始。可以使用方括号来访问数组中的元素,例如: a[0]

创建数组

以下是创建数组的几种方法:

let numbers = [1, 2, 3, 4, 5]  // 创建一个包含 1 到 5 的整数数组
let cities = ["New York", "London", "Paris"]  // 创建一个字符串数组
let emptyArray = [Int]()  // 创建一个空数组
var mutableArray = [1, 2, 3]  // 创建一个可变数组
访问元素

可以使用下标访问数组中的元素,例如:

let numbers = [1, 2, 3, 4, 5]
print(numbers[0])  // 输出 1

var mutableNumbers = [1, 2, 3]
mutableNumbers[0] = 7
print(mutableNumbers)  // 输出 "[7, 2, 3]"
迭代数组

可以使用 for-in 循环来迭代数组,例如:

let numbers = [1, 2, 3, 4, 5]
for number in numbers {
    print(number)
}

也可以使用 enumerated() 方法来同时迭代数组的索引和元素,例如:

let numbers = [1, 2, 3, 4, 5]
for (index, number) in numbers.enumerated() {
    print("Index: \(index), Number: \(number)")
}
数组操作

可以使用许多方法来操作数组,例如:

let numbers = [1, 2, 3, 4, 5]

// 添加元素
var mutableNumbers = [1, 2, 3]
mutableNumbers.append(4)
mutableNumbers += [5]

// 删除元素
mutableNumbers.removeLast()
mutableNumbers.remove(at: 1)

// 排序
let sortedNumbers = numbers.sorted()
集合

集合是一个无序的合集。每个元素只出现一次。可以使用 insert(_:) 方法来插入元素,使用 remove(_:) 方法来删除元素,使用 contains(_:) 方法来检查集合是否包含某个元素。

创建集合

以下是创建集合的几种方法:

let numbers: Set = [1, 2, 3, 4, 5]  // 创建一个整数集合
let cities = Set(["New York", "London", "Paris"])  // 创建一个字符串集合
let emptySet = Set<Int>()  // 创建一个空集合
var mutableSet = Set<String>()  // 创建一个可变集合
迭代集合

可以使用 for-in 循环来迭代集合,例如:

let numbers: Set = [1, 2, 3, 4, 5]
for number in numbers {
    print(number)
}
集合操作

可以使用许多方法来操作集合,例如:

let numbers: Set = [1, 2, 3, 4, 5]

// 添加元素
var mutableNumbers = Set<Int>()
mutableNumbers.insert(1)
mutableNumbers.insert(2)
mutableNumbers.insert(3)

// 删除元素
mutableNumbers.remove(3)

// 检查是否包含元素
let containsThree = numbers.contains(3)

// 求并集
let set1: Set = [1, 2, 3]
let set2: Set = [3, 4, 5]
let union = set1.union(set2)

// 求交集
let intersection = set1.intersection(set2)
字典

字典是一个无序的键值对合集。可以用键来访问值,例如: a["foo"] = 123

创建字典

以下是创建字典的几种方法:

let ages = ["Alice": 22, "Bob": 28, "Charlie": 25]  // 创建一个字符串到整数的字典
let emptyDictionary = [String: Int]()  // 创建一个空字典
var mutableAges = ["Alice": 22, "Bob": 28, "Charlie": 25]  // 创建一个可变字典
访问元素

可以使用下标访问字典中的元素,例如:

let ages = ["Alice": 22, "Bob": 28, "Charlie": 25]
print(ages["Bob"])  // 输出 Optional(28)

mutableAges["Alice"] = 23
print(mutableAges)  // 输出 "["Alice": 23, "Bob": 28, "Charlie": 25]"
迭代字典

可以使用 for-in 循环来迭代字典的键值对,例如:

let ages = ["Alice": 22, "Bob": 28, "Charlie": 25]
for (name, age) in ages {
    print("\(name) is \(age) years old")
}
字典操作

可以使用许多方法来操作字典,例如:

var mutableAges = ["Alice": 22, "Bob": 28, "Charlie": 25]

// 添加元素
mutableAges["David"] = 24

// 删除元素
mutableAges.removeValue(forKey: "Charlie")

// 检查是否包含键
let containsBob = mutableAges.keys.contains("Bob")

// 获取键、值数组
let keys = Array(mutableAges.keys)
let values = Array(mutableAges.values)
总结

以上是 Swift 中集合的基本操作。数组、集合和字典都有许多可用的方法,可以根据实际需要选择使用。