//OC 枚舉:
enum season {
seasonSpring,
seasonSummer,
seasonAutumn,
seasonWinter
};
enum season thisSeason = seasonSpring;
Swift定義枚舉類型
//: 定義枚舉類型,枚舉的每個成員前面加case
enum Season {
case Spring
case Summer
case Autumn
case Winter
}
//: 定義一個枚舉變量
var season = Season.Spring
//: 再次修改值的時候可以直接 .成員, 是因為類型推導.
season = Season.Summer
season = .Summer
print(season)
Swift判斷枚舉類型
//: switch判斷枚舉類型
switch season {
case Season.Spring:
print("春天")
case Season.Summer:
print("夏天")
case Season.Autumn:
print("秋天")
case Season.Winter:
print("冬天")
}
//: 可以省略枚舉名
var season2 = Season.Spring
switch season2 {
case .Spring:
print("春天")
case .Summer:
print("夏天")
case .Autumn:
print("秋天")
case .Winter:
print("冬天")
}
枚舉成員類型
//: 定義枚舉,成員類型為Int
enum Direction: Int {
case North = 0
case South = 1
case East = 2
case West = 3
}
//var direction = Direction.North
//: 使用初始值來定義枚舉變量
var direction = Direction(rawValue: 1)
print(direction)
//: 可選綁定
if let dir = direction {
switch dir {
case .North:
print("北")
case .South:
print("南")
case .East:
print("東")
case .West:
print("西")
}
}