如何将String值转换为String类型的枚举?
我的枚举定义如下:
enum TemplateSlotType : String {
case Default = ""
case Recommendation = "recommendation"
}
我想将字符串“recommended”转换为类型.Recommendation
答案 0 :(得分:0)
我在Stack Overflow上找不到答案,但确实找到了答案。
这也适用于其他枚举类型:
enum Lets : String {
case X = "x"
case Y = "y"
case Z = "z"
}
var zz = Lets.fromRaw("z")
zz! == .Z // true
println(Lets.Y.toRaw())
有关详细信息,请结帐:http://ericasadun.com/2014/08/27/swift-converting-values-to-enumerations/
我的最终实施:
if let slotType = json["type"].object as? String {
type = TemplateSlotType(rawValue: slotType)!
}