0. 字典的介紹
字典允許按照某個(gè)鍵來(lái)訪問(wèn)元素。
字典是由兩部分集合構(gòu)成的佛舱,一個(gè)是鍵(key)集合椎例,一個(gè)是值(value)集合。
鍵集合是不能有重復(fù)元素的名眉,值集合是可以重復(fù)的粟矿,鍵值是成對(duì)出現(xiàn)的。
Swift中字典類(lèi)型是Dictionary损拢,也是一個(gè)泛型集合陌粹。
1.如何定義字典
1>定義不可變字典:使用let修飾
let a : Int = 10
//編譯器會(huì)根據(jù)[]中是一個(gè)個(gè)元素(數(shù)組),還是鍵值對(duì)(字典)
//let dict = ["name" : "why", "age" : 18, "height" : 1.88] as [String : Any]
//let dict = ["123" : "321", "abc" : "cba"]不需要進(jìn)行轉(zhuǎn)化
// Array --> [String]
// let dict : Dictionary = ["name" : "why", "age" : 18, "height" : 1.88]
// dict["phoneNum"] = "+86 110"錯(cuò)誤寫(xiě)法
let dict : [String:Any] = ["name":"why","age":18,"height":1.88]
2>定義可變字典:使用var修飾
// var arrayM = [String]()
// var dictM = Dictionary()
var dictM = [String:Any]()
2.對(duì)可變字典的基本操作(增刪改查)
?2.1.添加元素
dictM["name"] = "aaa"
dictM["age"] = 18
dictM["height"] = 1.88
2.2.刪除元素
dictM.removeValue(forKey:"height")
2.3.修改元素
dictM["name"] ="aaa"
dictM.updateValue("bbb", forKey:"name")
2.4.查找元素
dictM["age"]
3.遍歷字典
3.1.遍歷字典中所有的key
for key in dict.keys{
? ? print(key)
}
3.2.遍歷字典中所有的value
for value in dict.values{
? ? print(value)
}
3.3.遍歷字典中所有的key/value
for (key, value) in dict{
? ? print(key, value)
}
4.字典合并
var dict1 : [String:Any] = ["name":"ccc","age":18]
let dict2 : [String:Any] = ["height":1.88,"phoneNum":"+86 110"]
//let resultDict = dict1 + dict2 ? ? //(不可以)
for (key, value) in dict2{
? ? dict1[key] = value
}