Swift编程之枚举类型详解

2020-01-08 22:57:34丽君
易采站长站为您分析Swift编程之枚举类型,讲解了枚举语法、匹配枚举值与switch语句、关联值、原始值等内容,Swift中枚举类型是最重要的类型,感兴趣的小伙伴们可以参考一下  

想必写过程序的童鞋对枚举类型并不陌生吧,使用枚举类型的好处是多多的,在这儿就不做过多的赘述了。Fundation框架和UIKit中的枚举更是数不胜数,枚举可以使你的代码更易阅读并且可以提高可维护性。在Swift语言中的枚举可谓是让人眼前一亮。在Swift中的枚举不仅保留了大部分编程语言中枚举的特性,同时还添加了一些好用而且实用的新特性,在本篇文章中将领略一些Swift中枚举类型的魅力。

有小伙伴会问,不就是枚举么,有什么好说的。在Swift中的枚举怎不然,Swift中的枚举的功能要强大的多,不仅可以给枚举元素绑定值,而且可以给枚举元素关联多个值,同时还可以通过元素的值给一个枚举变量赋一个枚举值,并且枚举中可以定义枚举函数。下面将要开始窥探一下Swift中的枚举。

一、定义枚举

在Swift中枚举的定义与其他编程语言中定义枚举不同,在每个枚举元素前面多了一个关键字case,  case后紧跟的是枚举元素,下面是定义枚举类型的两种方式。

1. 多个case, 每个枚举元素前都有个case


//枚举的定义
enum KindOfAnimal {
 case Cat
 case Dog
 case Cow
 case Duck
 case Sheep
} 

2.一个case搞定所有元素,枚举元素之间使用逗号隔开


 //你也可以这样定义枚举类型
enum KindOfAnimalTwo {
 case Cat, Dog, Cow, Duck, Sheep
 }

二、枚举类型的使用

定义完枚举类型就是为了使用的对吧,直接使用枚举类型声明变量即可, 在Swift中是不需要typedef来定义枚举类型的,我们可以直接使用枚举类型。


//定义枚举变量并赋值
var animal1: KindOfAnimal = KindOfAnimal.Cat

给枚举变量赋值时也可以把枚举类型名省略掉,因为在声明枚举变量时就已经指定了枚举变量的类型。


var animal2: KindOfAnimal = .Dog 

在Switch中使用我们的枚举变量


//在Switch…Case中使用枚举
switch animal1 {
 case KindOfAnimal.Cat:
 println("Cat")
 case KindOfAnimal.Dog:
 println("Dog")
 case KindOfAnimal.Cow:
 println("Cow")
 case KindOfAnimal.Duck:
 println("Duck")
 case KindOfAnimal.Sheep:
 println("Sheep")
 default:
 println("error = 呵呵")
}