Swift回忆录-枚举
Swift回忆录-枚举特性支持
语法enum SomeEnumeration {
// 枚举定义放在这里
}
例子 enum CompassPoint {
case north
case south
case east
case west
}
用法 var directionToHead = CompassPoint.west
directionToHead = .east
关联值可以定义 Swift 枚举来存储任意类型的关联值,甚至可以根据需求让每个枚举成员的关联值类型各不相同 例:定义一个有两种类型条形码枚举 enum Barcode {
case upc(Int,Int,Int)
case qrCode(String)
}
用法: “` //还可以继续为productBarcode赋值不同类型的成员值 原始值在Swift中可以为枚举成员预设默认值(称为原始值) 例:使用 ASCII 码作为原始值的枚举 enum ASCIIControlCharacter: Character {
case tab = "t"
case lineFeed = "n"
case carriageReturn = "r"
}
原始值的隐式赋值在使用原始值为
例 1: enum Planet: Int {
case mercury = 1,venus,earth,mars,jupiter,saturn,uranus,neptune
}
例 2: enum CompassPoint: String {
case north,south,east,west
}
rawValue属性: let earthsOrder = Planet.earth.rawValue
// earthsOrder 值为 3
let sunsetDirection = CompassPoint.west.rawValue
// sunsetDirection 值为 "west"
初始化枚举实例如果在定义枚举类型的时候使用了原始值,那么将会自动获得一个初始化方法,这个方法接收一个叫做rawValue的参数,参数类型即为原始值类型,返回值则是枚举成员或nil 例: let possiblePlanet = Planet(rawValue: 7)
// possiblePlanet 类型为 Planet? 值为 Planet.uranus
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |