枚举
使用枚举会使得编程的过程更加安全,因为一旦使用了不是枚举的值,系统就会立刻给出反馈。
enum Direction{
case North
case South
case East
case West
}
let directuin = Direction.South
switch directuin {
case .North:
print("North")
case .South:
print("South")
case .East:
print("East")
case .West:
print("West")
default:
print("")
}
更简洁的声明方式:
enum Direction{
case North,South,East,West
}
设置枚举值
enum Direction:Int{
case North = 1
case South = 2
case East = 3
case West = 4
}
enum Direction:String{
case North = "North"
case South = "South"
case East = "East"
case West = "West"
}
获取枚举值
enum Direction:String{
case North = "North"
case South = "South"
case East = "East"
case West = "West"
}
print(Direction.North.rawValue)
遍历枚举
枚举需要继承CaseIterable才能使得枚举具有可遍历的特性。
enum TestEnum:CaseIterable{
case A
case B
case C
}
print(TestEnum.allCases)
运行结果:
[__lldb_expr_1.TestEnum.A, __lldb_expr_1.TestEnum.B, __lldb_expr_1.TestEnum.C]
//结果是一个数组