【Swift学习】Swift编程之旅---集合类型之字典(八)

  字典是一种存储相同类型多重数据的存储器。每个值(value)都关联独特的键(key),键作为字典中的这个值数据的标识符。和数组中的数据项不同,字典中的数据项并没有具体顺序。

  字典写作Dictionary<Key, Value>。也可以写作[Key: Value]

  创建空字典

var namesOfIntegers = [Int: String]()
// namesOfIntegers is an empty [Int: String] dictionary

  类型推断写作[:]

namesOfIntegers[16] = "sixteen"
// namesOfIntegers now contains 1 key-value pair
namesOfIntegers = [:]
// namesOfIntegers is once again an empty dictionary of type [Int: String]

  创建字典字面量

[key 1: value 1, key 2: value 2, key 3: value 3]

var airports: [String: String] = ["YYZ": "Toronto Pearson", "DUB": "Dublin"]

  类型推断写作

var airports = ["YYZ": "Toronto Pearson", "DUB": "Dublin"]

  访问和修改

  count返回字典的键值对数

  isEmpty判断字典是否为空

  

airports["LHR"] = "London Heathrow
if let oldValue = airports.updateValue("Dublin Airport", forKey: "DUB") {
    print("The old value for DUB was (oldValue).")
}
// Prints "The old value for DUB was Dublin.

  removeValueForKey(_:)删除键值对  

if let removedValue = airports.removeValueForKey("DUB") {
    print("The removed airport's name is (removedValue).")
} else {
    print("The airports dictionary does not contain a value for DUB.")
}
// Prints "The removed airport's name is Dublin Airport.

 遍历

for (airportCode, airportName) in airports {
    print("(airportCode): (airportName)")
}
// YYZ: Toronto Pearson
// LHR: London Heathrow
for airportCode in airports.keys {
    print("Airport code: (airportCode)")
}
// Airport code: YYZ
// Airport code: LHR
 
for airportName in airports.values {
    print("Airport name: (airportName)")
}
// Airport name: Toronto Pearson
// Airport name: London Heathrow
原文地址:https://www.cnblogs.com/salam/p/5401686.html