字典是由两部分内容构成的,一个是键(key) ,一个是值(value)。字典是一种存储多个类型相同的值的容器。每个值都和一个唯一的键相对应,这个键在字典里就是其对应值的唯一标识。键是不能有重复元素的,而值是可以重复的,键和值是成对出现的。跟数组不同,字典里的元素并没有特定的顺序。在“字典”中使用键来查询其对应值的方式,跟在“现实世界的字典”中使用单词查询单词定义差不多。
6.2.1字典创建
Swift的字典类型定义的格式如下:
Dictionary,
其中KeyType是字典中键的类型,ValueType是字典中值的类型。首先我们来声明一个空字典
1 | var addressDict = Dictionary()
我们创建一个空的字典addressDict。键为String类型,值也为String,初始化后没有任何元素。
字典是以键值对的形式出现的,键值对是一个键和一个值的组合。在字典中,每对键值对中的键和值使用冒号分开,键值对之间用逗号分开,用一对方括号将这些键值对包起来:
[key 1:value 1,key 2:value 2,key 3:value 3]
下面我们来创建一个键表示城市和值表示地区的字典,示例代码如下:
1| var addressDict1: Dictionary = ["上海" : "黄浦区","广东" : "深圳","江苏" : "南京"]
2| var addressDict2 = ["上海" : "黄浦区","广东" : "深圳","江苏" : "南京"]
3| let addressDict3 = ["上海" : "黄浦区","广东" : "深圳","江苏" : "南京"]
上述代码,采用3种写法创建同一个字典。第1行代码我们使用冒号(:)指定字典的类型为Dictionary,声明一个名为addressDict1的可变字典,并初始化值为["上海" : "黄浦区","广东" : "深圳","江苏" : "南京"]。其中“上海”,“广东”,“江苏”表示键,“黄浦区”,“深圳”,"南京"表示值。
第2行我们使用var声明了可变字典addressDict2,这里没有指定字典类型。Swift语言会根据字典的值自动推断出字典的类型。
第3行使用let声明了不可变字典addressDict3,在声明的同时初始化,一旦化被初始化就不可以被修改。