Swift 字典用来存储无序的相同类型数据的集合,Swift字典会强制检测元素的类型,如果类型不同则会报错。
Swift字典每个值(value)都关联唯一的键(key),键作为字典中的这个值数据的标识符。
和数组中的数据项不同,字典中的数据项并没有具体顺序。我们在需要通过标识符(键)访问数据的时候使用字典,这种方法很大程度上和我们在现实世界中使用字典查字义的方法一样。
Swift字典的key没有类型限制可以是整型或字符串,但必须是唯一的。
如果创建一个字典,并赋值给一个变量,则创建的字典就是可以修改的。这意味着在创建字典后,可以通过添加、删除、修改的方式改变字典里的项目。如果将一个字典赋值给常量,字典就不可修改,并且字典的大小和内容都不可以修改。
-
-
-
- var dict01 = [Int: String]()
- print(dict01)
-
-
- var dict02 :[Int:String] = [1:"One", 2:"Two", 3:"Three"]
- print(dict02)
-
- var dict03 = ["name":"DevZhang", "job":"iOSDev", "company":"VSTECS"]
- print(dict03)
-
-
- let value01 = dict02[1]
- print(value01)
-
- let value02 = dict03["name"]
- print(value02)
-
- let value03 = dict02.updateValue("Four", forKey: 4)
- print(value03)
- print(dict02)
-
-
- var value04 = dict02.updateValue("TwoTmp", forKey: 2)
- print(dict02)
- print(value04)
-
-
- var value05 = dict02[3]
- print(value05)
- value05 = "ThreeTmp"
- print(dict02)
- dict02[3] = "ThreeTmp"
- print(dict02)
-
-
- let valueRemove01 = dict02.removeValueForKey(2)
- print(valueRemove01)
- print(dict02)
-
-
- dict02[1] = nil
- print(dict02)
-
-
- for (key, value) in dict03
- {
- print("字典 key \(key) - 字典 value \(value)")
- }
-
-
- for (key, value) in dict03.enumerate()
- {
- print("字典 key \(key) - 字典 (key, value) 对 \(value)")
- }
-
-
- for key in dict03.keys
- {
- let value = dict03[key]
- print("key = \(key), value = \(value)")
- }
-
-
- let dictKeys = [String](dict03.keys)
- for (key) in dictKeys
- {
- print("\(key)")
- }
-
- let dictValues = [String](dict03.values)
- for (value) in dictValues
- {
- print("\(value)")
- }
-
- let count01 = dict03.count
- print(count01)
-
- let empty01 = dict01.isEmpty
- print("dict01 is \(empty01)")
-
- let empty02 = dict03.isEmpty
- print("dict03 is \(empty02)")