一、概念:
- 枚举定义了一个通用类型的一组相关的值,使你可以在你的代码中以一个安全的方式来使用这些值。
- 在 C/OC 语言中枚举指定相关名称为一组整型值;
- Swift 中的枚举更加灵活,不必给每一个枚举成员提供一个值,也可以提供一个值是字符串,一个字符,或者是数字
二、枚举的语法:
使用关键字 enum,并且把它们的整个定义放在一个大括号内
三、枚举的定义:
- 定义一:
enum Type{
case type1
case type2
case type3
}
- 定义二:多个成员值可以出现在同一行上
enum Type1{
case type1,type2,type3
}
四、给枚举类型赋值:
- 默认枚举是没有任何类型的,就是一个标识;
- Swift中,枚举类型可以绑定任何值,但是要提前声明要绑定的值类型.
enum Type : Int{
case type1 = 0
case type2 = 1
case type3 = 2
}
enum Type : String{
case type1 = "abc"
case type2 = "123"
case type3 = "xyz"
}
五、枚举的简单使用:
- 通过枚举值获取原始值 rawValue:
enum Type : String{
case type1 = "abc"
case type2 = "123"
case type3 = "xyz"
}
Type.type2.rawValue //"123"
func test(type:Type){
if type == Type.type1 {
type.rawValue + "123"
}
}
test(type: Type.type1) //"abc123"
- 通过 rawValue 获取枚举值:
enum Type : String{
case type1 = "abc"
case type2 = "123"
case type3 = "xyz"
}
let type = Type(rawValue: "123") //type2
//type为可选类型
- 注意:枚举值仅仅是一个抽象符号,并不代表任何类型;如果绑定原始值,必须指明枚举的类型。