给定以下枚举:
enum Audience {
case Public
case Friends
case Private
}
如何从下面的audience
常量中获取字符串"Public"
?
let audience = Audience.Public
发布于 2017-01-26 17:12:03
在swift 3中,你可以使用这个
var enumValue = Customer.Physics
var str = String(describing: enumValue)
发布于 2014-07-11 23:35:37
现在,我将重新定义枚举为:
enum Audience: String {
case Public = "Public"
case Friends = "Friends"
case Private = "Private"
}
这样我就可以做到:
audience.toRaw() // "Public"
但是,这个新的枚举定义不是多余的吗?我是否可以保留初始枚举定义并执行以下操作:
audience.toString() // "Public"
发布于 2015-02-07 22:26:53
我喜欢在Raw Values
中使用Printable
。
enum Audience: String, Printable {
case Public = "Public"
case Friends = "Friends"
case Private = "Private"
var description: String {
return self.rawValue
}
}
然后我们可以这样做:
let audience = Audience.Public.description // audience = "Public"
或
println("The value of Public is \(Audience.Public)")
// Prints "The value of Public is Public"
https://stackoverflow.com/questions/24701075
复制相似问题