//枚举的意义: 定义一个类别的集合, 常量 常用于解决一类魔法字符/数字 随处写的问题 //定义枚举的二种方式 enum CompassPonit { case North case South case East case West } enum Navigation { case Home, Category, Center} //使用枚举的二种方式 print(CompassPonit.North) //这种 不写enum 名,直接. 的 ,需要给变量先赋值为此enum的类型 否则无法直接用点语法 var nav = Navigation.Home nav = .Category print(nav) //枚举常用于赋值后判断 变量是否是某个枚举值 switch nav { case .Home: print("nav = home") break case .Category: print("nav = Category") break case .Center: print("nav = Center") break } //枚举的原始值rawValue //支持为每一个属性赋原始值, enum ASCIIControlCharacter: Character{ case Tab = " " case LineFeed = " " } print(ASCIIControlCharacter.LineFeed.rawValue) //隐式分配原始值 enum Numbers : Int{ case One = 1 case Two case Three } print(Numbers.Two.rawValue)