Swift 字典学习笔记

在 Swift 中,字典是一种用来储存键值对的集合类型,其中每个键都必须是唯一的。字典可以通过使用中括号来创建,例如:

swiftCopy Code
var myDictionary = [String: Int]()

上述代码创建了一个空字典,其中键的类型为 String,值的类型为 Int

我们可以使用下标语法向字典中添加键值对,例如:

swiftCopy Code
myDictionary["one"] = 1 myDictionary["two"] = 2

上述代码向字典 myDictionary 中添加了两个键值对,分别是 "one""two" 对应的值 12

我们也可以使用字典字面量的方式创建字典,例如:

swiftCopy Code
var myDictionary = ["one": 1, "two": 2]

上述代码创建了一个含有两个键值对的字典,其中 "one" 对应的值为 1"two" 对应的值为 2

Swift 的字典提供了很多有用的方法,例如 count 属性可以返回字典中元素的数量,例如:

swiftCopy Code
print(myDictionary.count) // 输出: 2

我们也可以使用 keysvalues 属性获取字典中所有的键和值,例如:

swiftCopy Code
let keys = myDictionary.keys let values = myDictionary.values

上述代码将字典 myDictionary 中的所有键和值分别存储到了 keysvalues 常量中。

我们还可以使用下标语法获取字典中某个键所对应的值,例如:

swiftCopy Code
print(myDictionary["one"]) // 输出: Optional(1)

由于字典中某个键可能不存在,因此上述代码返回的是一个可选类型的值。我们也可以使用 if let 或者 guard let 等语句来判断某个键是否存在,并且获取它对应的值。

下面是一个使用字典的实例:

swiftCopy Code
var studentScores = ["Tom": 90, "Jerry": 80, "Mickey": 95] // 输出每个学生的分数 for (name, score) in studentScores { print("\(name)'s score is \(score)") } // 输出每个学生的平均分数 let totalScore = studentScores.values.reduce(0, +) let averageScore = Double(totalScore) / Double(studentScores.count) print("The average score is \(averageScore)")

上述代码定义了一个名为 studentScores 的字典,其中键为学生的姓名,值为他们的考试分数。接着,我们通过 for-in 循环遍历字典中的所有键值对,并且输出每个学生的分数。最后,我们计算出所有学生的平均分数并将其输出。