非连续值枚举

我想你可能知道用下面这种方式创建每一项自增初始值的枚举类型:

enum MyEnumeration: Int {

case one = 1, two, three, four

}

MyEnumeration.three.rawValue // 3

我想你也可能知道用以下方式创建赋初始值的枚举类型:

enum MyEnumeration: Int {

case one = 1, three = 3, five = 5

}

但是我想你可能不知道用同样的声明可以将两种方式混合并匹配起来。(在下面这个例子中使用了基于标准规定的数值,你可能不应该使用这种方式来声明枚举类型

enum HTTPStatusCode: Int {

// 100 Informational

case continue = 100

case switchingProtocols

case processing

// 200 Success

case OK = 200

case created

case accepted

case nonAuthoritativeInformation

}

HTTPStatusCode.accepted.rawValue // 202

原文地址:http://ericasadun.com/2017/01/30/non-contiguous-raw-value-enumerations/?utm_campaign=iOS%2BDev%2BWeekly&utm_medium=email&utm_source=iOS_Dev_Weekly_Issue_286

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容