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)
。