387,swift 倘若你想要读取enum的值,可以通过rawV

2020-12-27  本文已影响0人  枫叶1234

不过某种情形下,你可能想要通过一个已有的raw value来创建一个enum case。这种情况下,枚举提供了一个指定构造方法:

enum Movement: Int {
    case Left = 0
    case Right = 1
    case Top = 2
    case Bottom = 3
}
// 创建一个movement.Right 用例,其raw value值为1
let rightMovement = Movement(rawValue: 1)

倘若使用rawValue构造器,切记它是一个可失败构造器。换言之,构造方法返回值为[可选类型值]因为有时候传入的值可能与任意一个case都不匹配。比如Movement(rawValue:42)

上一篇下一篇

猜你喜欢

热点阅读