![Swift 4从零到精通iOS开发](https://wfqqreader-1252317822.image.myqcloud.com/cover/794/26846794/b_26846794.jpg)
上QQ阅读APP看书,第一时间看更新
6.4 枚举类型的创建与应用
Swift语言中使用enum关键字来进行枚举的创建,使用Xcode开发工具创建一个命名为Enum的playground文件,在其中创建一个姓氏类型的枚举,如下所示:
![](https://epubservercos.yuewen.com/BD6CFE/15289822004505406/epubprivate/OEBPS/Images/Figure-P102_65900.jpg?sign=1739285567-JkpbsPa6xI8j7j7Yk7ZcTwiM12wLbtkj-0-a82a29ce062c729ca490bb9a6578d677)
上面的代码创建了一个姓氏枚举类型,这个枚举类型中定义了4个枚举值,分别是张、王、李、赵,上面的写法将4个枚举值分别在4个case语句中定义,开发者也可以在1个case子句中完成多个枚举值的定义,示例如下:
![](https://epubservercos.yuewen.com/BD6CFE/15289822004505406/epubprivate/OEBPS/Images/Figure-P102_65901.jpg?sign=1739285567-mGsJ1rWZJ4K27QivWHTVEROyAEMTYc6u-0-fd611aa1b35709fdbe5a4df7b55afe9e)
在使用时,枚举和其他类型一样,开发者可以在声明变量时将变量的类型指定为某个枚举类型,也可以通过对变量初始化来使编译器自动推断出变量的类型。枚举中定义的枚举值在使用时,开发者可以使用点语法来获取,示例如下:
//创建一个姓氏枚举类型的变量 var sur:Surname //对sur变量进行赋值 sur=Surname.张
实际上,如果一个变量的类型已经确认为某个枚举类型,那么开发者再进行变量赋值的时候是可以将枚举类型省略掉的,直接使用点语法获取枚举值即可,示例如下:
//对sur进行修改 sur = .王
在开发中,枚举类型会经常与switch-case结合使用以实现选择结构,这种方式实现的选择结构代码清晰统一,对于开发者来说十分有益,示例如下:
![](https://epubservercos.yuewen.com/BD6CFE/15289822004505406/epubprivate/OEBPS/Images/Figure-P103_65904.jpg?sign=1739285567-q0Qgf2x3wSsjmrSIej62b5JpmD3YvFE2-0-5dc04de252716eae58d6fb1b605039ec)