swift09 - 枚举

1. 枚举定义

enum CompassPoint {
    case north
    case south
    case east
    case west
}
或者
enum CompassPoint {
    case north,south,east,west
}

//取值
var directionToHead = CompassPoint.west
directionToHead初始化时,推断出的类型CompassPoint。一旦directionToHead被声明为一个CompassPoint,你可以将其设置为不同的CompassPoint使用更短的点语法值:
directionToHead = .east

2. 枚举与switch

directionToHead = .south
switch directionToHead {
case .north:
    print("Lots of planets have a north")
case .south:
    print("Watch out for penguins")
case .east:
    print("Where the sun rises")
case .west:
    print("Where the skies are blue")
}

3. 迭代枚举 枚举标记为符合CaseIterable协议

enum Beverage: CaseIterable {
    case coffee, tea, juice
}
let numberOfChoices = Beverage.allCases.count
print("\(numberOfChoices) beverages available")
// Prints "3 beverages available"

for beverage in Beverage.allCases {
    print(beverage)
}
// coffee
// tea
// juice
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容