一尘不染

Swift:将枚举值转换为String吗?

swift

鉴于以下枚举:

enum Audience {
    case Public
    case Friends
    case Private
}

如何"Public"audience下面的常量获取字符串?

let audience = Audience.Public

阅读 557

收藏
2020-07-07

共1个答案

一尘不染

不确定此功能是在哪个Swift版本中添加的,但是现在( Swift 2.1 )您只需要以下代码:

enum Audience : String {
    case public
    case friends
    case private
}

let audience = Audience.public.rawValue // "public"

如果将字符串用于原始值,则每种情况的隐式值都是该 情况名称文本

[…]

enum CompassPoint : String {
    case north, south, east, west
}

在上面的示例中,CompassPoint.south的隐式原始值为“ south”,依此类推。

您可以使用其rawValue属性访问枚举用例的原始值:

let sunsetDirection = CompassPoint.west.rawValue
// sunsetDirection is "west"

资源。

2020-07-07