首页 理论教育 创建和初始化字典的方法详解

创建和初始化字典的方法详解

时间:2023-06-23 理论教育 版权反馈
【摘要】:在定义完字典之后,我们可以初始化一个字典,示例代码如下:动手写5.2.2 InitialDictionarydictionary1创建了一个Dictionary的可变实例,其中键是String类型,值是Int类型。而dictionary2使用了更为简洁的方式,使用中括号加冒号的形式“[:]”定义了一个字典。在定义完字典之后,我们可以初始化一个字典,示例代码如下:动手写5.2.2 InitialDictionary控制台输出如下:控制台输出如下:字典初始化的方式很简单,可以使用Dictionary自带的初始化方法,也就是使用“()”来调用,方括号的调用也是等价的。

创建和初始化字典的方法详解

创建Swift字典的通用语法如下:

动手写5.2.1 DefineDictionary

dictionary1创建了一个Dictionary的可变实例,其中键是String类型,值是Int类型。读者会发现,在Swift中非常强调声明时指定类型,这是一种编译时安全的做法,本书即推荐这种做法。对字典的键和值接收什么类型的声明位于尖括号“<>”内,读者可以根据自己的需求更改键值的类型。而dictionary2使用了更为简洁的方式,使用中括号加冒号的形式“[:]”定义了一个字典。

Swift中对于字典中键的类型有一个要求,就是其必须实现了Hashable的协议(协议的知识会在后续章节展开介绍,这里读者只需要有个概念,协议一般会要求某种类型要提供一些方法或者一些值):也就是每个键必须提供一种方法让Dictionary保证任何给定的键都是唯一的。Swift的基本类型都是实现了Hashable的协议的,比如String、Int、Float、Double和Bool。

在定义完字典之后,我们可以初始化一个字典,示例代码如下:

动手写5.2.2 InitialDictionary

dictionary1创建了一个Dictionary的可变实例,其中键是String类型,值是Int类型。读者会发现,在Swift中非常强调声明时指定类型,这是一种编译时安全的做法,本书即推荐这种做法。对字典的键和值接收什么类型的声明位于尖括号“<>”内,读者可以根据自己的需求更改键值的类型。而dictionary2使用了更为简洁的方式,使用中括号加冒号的形式“[:]”定义了一个字典。

Swift中对于字典中键的类型有一个要求,就是其必须实现了Hashable的协议(协议的知识会在后续章节展开介绍,这里读者只需要有个概念,协议一般会要求某种类型要提供一些方法或者一些值):也就是每个键必须提供一种方法让Dictionary保证任何给定的键都是唯一的。Swift的基本类型都是实现了Hashable的协议的,比如String、Int、Float、Double和Bool。(www.xing528.com)

在定义完字典之后,我们可以初始化一个字典,示例代码如下:

动手写5.2.2 InitialDictionary

控制台输出如下:

控制台输出如下:

字典初始化的方式很简单,可以使用Dictionary自带的初始化方法,也就是使用“()”来调用,方括号的调用也是等价的。还有一种方式是将已经创建了的有内容的字典进行赋值操作,而一个有键值对的字典可以通过“[键1:值1, 键2:值2, 键3:值3]”的方式直接创建。本例中三个字典都是通过类型推断来定义字典的具体类型的,如果在声明时就需要初始化字典,本书推荐使用类型推断,这样可以让代码更为简洁。bookDictionary3中存放了书的上市时间,一本书对应一个时间。

字典初始化的方式很简单,可以使用Dictionary自带的初始化方法,也就是使用“()”来调用,方括号的调用也是等价的。还有一种方式是将已经创建了的有内容的字典进行赋值操作,而一个有键值对的字典可以通过“[键1:值1, 键2:值2, 键3:值3]”的方式直接创建。本例中三个字典都是通过类型推断来定义字典的具体类型的,如果在声明时就需要初始化字典,本书推荐使用类型推断,这样可以让代码更为简洁。bookDictionary3中存放了书的上市时间,一本书对应一个时间。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈