Swift存储类型—字典
Swift 字典用来存储无序的相同类型数据的集合,Swift 字典会强制检测元素的类型,如果类型不同则会报错。每个值都与一个唯一的键相关联,该键在字典中充当该值的标识符。与数组中的项目不同,字典中的项目没有指定的顺序。当您需要根据其标识符查找值时,您可以使用字典,就像使用现实世界的字典来查找特定单词的定义一样。Swift 字典的key没有类型限制可以是整型或字符串,但必须是唯一的。如果创建一个字典,并赋值给一个变量,则创建的字典就是可以修改的。这意味着在创建字典后,可以通过添加、删除、修改的方式改变字典里的项目。如果将一个字典赋值给常量,字典就不可修改,并且字典的大小和内容都不可以修改。
创建字典:
访问字典:
根据字典的索引(键)来访问字典
修改字典:
我们可以通过下标语法或者 updateValue(forKey:) 增加或更新字典的内容。如果 key 不存在,则添加值,如果存在则修改 key 对应的值。updateValue(_:forKey:)方法返回Optional值。与下标不同,updateValue(_:forKey:)方法在执行更新后返回旧值。这使您能够检查是否发生了更新。
移除key—value:
我们可以使用 removeValueForKey() 方法来移除字典 key-value 对。如果 key 存在该方法返回移除的值,如果不存在返回 nil 。也可以使用下标语法通过为该键分配nil的值从字典中删除键值对。使用removeValue(forKey:)方法从字典中删除键值对。如果存在,此方法会删除键值对并返回已删可以使用 for-in 循环来遍历某个字典中的键值对除的值,如果不存在值,则返回nil。
遍历字典:
可以使用 for-in 循环来遍历某个字典中的键值对,也可以使用enumerate()方法来进行字典遍历,返回的是字典的索引及 (key, value) 对。
字典转为数组:
可以提取字典的键值(key-value)对,并转换为独立的数组。
属性:
count属性是只读属性,用来计算字典有多少个键值对。
isEmpty 属性是只读属性,来判断字典是否为空,返回布尔值。