Swift 中的枚举 (enum)

xiaoxiao2021-02-28  90

枚举类型的常见定义方式

枚举类型的定义

方式一 enum MethodType1 { case get case post case put case delete } 方式二 enum MethodType2 { case get, post, put ,delete }

创建枚举具体的值

let type1 : MethodType1 = .get let type2 = MethodType2.post

输出

使用 Switch 语句匹配枚举值

enum WeekDays { case Monday,Tuesday,Wednesday,Thursday,Friday } func writeGreeting(day: WeekDays) { switch day { case .Monday: print("周一") case .Tuesday: print("周二") case .Wednesday: print("周三") case .Thursday: print("周四") case .Friday: print("周五") } } writeGreeting(day: .Monday)

给枚举类型绑定值

由于业务上的需求 ,要把每个成员提供某种具体的类型的默认值,为此 可以为枚举类型提供原始值声明,这些原始值得类型可以是字符、字符串、整型、浮点型等语法格式 enum 枚举名称 : 数据类型 { case 成员名 = 默认值 }

代码示例

enum Week : Int { case Monday = 0 case Tuseday = 1 case Wednesday = 2 case Thursday = 3 case Friday = 4 }

注意 : Week 的枚举类型的原始值类型为Int ,这就需要给每个成员赋值,这个值只能为Int类型

代码可以简写为

enum Week : Int { case Monday = 0,Tuseday,Wednesday,Thursday,Friday }

注意:这种写法给第一个成员赋值,后面的成员值会依次加 1 (仅限枚举类型为 Int 的枚举)

案例

func test(day : Week.RawValue) { switch day { case 0: print("------") default: print("*******") } } test(day: Week.Friday.rawValue) Week.Friday.rawValue
转载请注明原文地址: https://www.6miu.com/read-55357.html

最新回复(0)