enum Season: String { case spring = "春天" case summer = "夏天" case autumn = "秋天" case winter = "冬天" }
let season = Season(rawValue: "秋天")
print(season) // 输出:Optional(Season.autumn)
这个有点难理解
好的,我们进入 第四步:原始值(Raw Values)。
第四步:原始值(Raw Values)
在 Swift 中,枚举不仅支持关联值,还可以使用 原始值(Raw Values)。原始值是一个固定的值,可以是字符串、整数或浮点数等。原始值的好处在于,枚举的每个成员都有一个默认值,可以方便地与外部的常量进行比较或者转化。
1. 定义原始值的枚举:
在枚举定义中,你可以为每个 case 指定一个原始值。常见的类型有字符串(String)或整数(Int)。
示例 1:整数原始值
enum Day: Int {
case sunday = 1
case monday
case tuesday
case wednesday
case thursday
case friday
case saturday
}
这里,sunday 的原始值是 1,monday 是 2,以此类推。你可以不为后续的成员指定原始值,Swift 会自动递增。
示例 2:字符串原始值
enum Season: String {
case spring = "春天"
case summer = "夏天"
case autumn = "秋天"
case winter = "冬天"
}
这里,spring 的原始值是 "春天",summer 是 "夏天",以此类推。
2. 使用原始值:
你可以通过 rawValue 来访问枚举的原始值,并且可以通过原始值来初始化枚举值。
let day: Day = .monday
print(day.rawValue) // 输出:2
let season = Season(rawValue: "秋天")
print(season) // 输出:Optional(Season.autumn)
-
rawValue 属性可以访问当前枚举成员的原始值。
-
你可以使用原始值来初始化枚举值,但由于可能没有匹配的成员,返回值是一个 可选类型(Optional)。
✅ 作业(第4步):
-
创建一个 enum 类型 Fruit,它的成员有 apple、banana 和 cherry,分别对应原始值 "苹果"、"香蕉" 和 "樱桃"。
-
然后,打印出 Fruit 枚举中 banana 的原始值。
-
使用原始值 "樱桃" 来初始化一个 Fruit 实例,并打印出来。
完成后把代码发给我,我来帮你检查!😄