本教程属于Swift系列
枚举是一种将一组不同的选项,在一个共同的名称下分组的方法。
例子。
enum Animal {
case dog
case cat
case mouse
case horse
}
这个Animal 枚举现在是一个类型。
一个类型,其值只能是列出的情况之一。
如果你定义了一个类型为Animal 的变量。
var animal: Animal
你以后可以用这种语法来决定给它分配哪个值。
var animal: Animal
animal = .dog
我们可以在开关等控制结构中使用枚举。
enum Animal {
case dog
case cat
case mouse
case horse
}
let animal = Animal.dog
switch animal {
case .dog: print("dog")
case .cat: print("cat")
default: print("another animal")
}
枚举的值可以是字符串、字符或数字。
你也可以在单行上定义一个枚举。
enum Animal {
case dog, cat, mouse, horse
}
而且你还可以在枚举中加入类型声明,每一种情况都有一个该类型的值被分配。
enum Animal: Int {
case dog = 1
case cat = 2
case mouse = 3
case horse = 4
}
一旦你有了一个变量,你就可以用它的rawValue 属性得到这个值。
enum Animal: Int {
case dog = 1
case cat = 2
case mouse = 3
case horse = 4
}
var animal: Animal
animal = .dog
animal.rawValue //1
枚举是一种价值类型。这意味着它们在传递给函数时被复制,或从函数返回时被复制。而当我们把一个指向枚举的变量分配给另一个变量时。