swift2 枚举类型
来源:互联网 发布:大数据与生活的联系 编辑:程序博客网 时间:2024/05/18 15:54
枚举语法
enum CompassPoint { case North case South case East case West}var directionToHead = CompassPoint.WestdirectionToHead = .South
directionToHead的类型被推断当它被CompassPoint的一个可能值初始化。
一旦directionToHead被声明为一个CompassPoint,你可以使用更短的点(.)语法将其设置为另一个CompassPoint的值.
匹配枚举值
enum CompassPoint { case North case South case East case West}var directionToHead = CompassPoint.WestdirectionToHead = .Southswitch 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")}// 输出 "Watch out for penguins”
相关值
enum Barcode { case UPCA(Int, Int, Int) case QRCode(String)}var productBarcode = Barcode.UPCA(8, 85909_51226, 3)productBarcode = .QRCode("ABCDEFGHIJKLMNOP")switch productBarcode {case .UPCA(let numberSystem, let identifier, let check): print("UPC-A with value of \(numberSystem), \(identifier), \(check).")case .QRCode(let productCode): print("QR code with value of \(productCode).")}// 输出 "QR code with value of ABCDEFGHIJKLMNOP.”
switch productBarcode {case let .UPCA(numberSystem, identifier, check): print("UPC-A with value of \(numberSystem), \(identifier), \(check).")case let .QRCode(productCode): print("QR code with value of \(productCode).")}// 输出 "QR code with value of ABCDEFGHIJKLMNOP."
原始值
enum Planet: Int { case Mercury = 1, Venus, Earth, Mars, Jupiter, Saturn, Uranus, Neptune}let earthsOrder = Planet.Earth.rawValue// earthsOrder is 3
枚举类型可以用原始值进行预先填充,上述枚举的原始值类型为int
同时可以通过rawValue访问原始值,可以通过原始值创建枚举
let possiblePlanet = Planet(rawValue: 7)// possiblePlanet is of type Planet? and equals Planet.Uranuslet positionToFind = 9if let somePlanet = Planet(rawValue: positionToFind) { switch somePlanet { case .Earth: print("Mostly harmless") default: print("Not a safe place for humans") }} else { print("There isn't a planet at position \(positionToFind)")}// 输出 "There isn't a planet at position 9
这个范例使用可选绑定(optional binding),通过原始值9试图访问一个行星。
if let somePlanet = Planet(rawValue: 9)语句获得一个可选Planet,如果可选Planet可以被获得,把somePlanet设置成该可选Planet的内容。
在这个范例中,无法检索到位置为9的行星,所以else分支被执行。
0 0
- swift2 枚举类型
- Swift2.1 枚举转换类型
- 自定义数据类型 --- 枚举类型全解(swift2.3)
- swift2 集合类型
- swift2 类型转换
- Swift2-0基础_Enumerations(枚举)
- swift2
- swift2.0学习之类型转换
- 枚举类型
- 枚举类型
- 枚举类型
- 枚举类型
- 枚举类型
- 枚举类型
- 枚举类型
- 枚举类型
- 枚举类型
- 枚举类型
- 在100G文件中找出出现次数最多的100个IP
- 面向对象总结
- spring基础知识汇总
- Eddy's research I
- DirectX11 编译着色器、创建顶点着色器、创建像素着色器
- swift2 枚举类型
- CSU 1655文本计算器
- Remove Nth Node From End of List
- CSU 1650影魔大战
- 安卓发版 混淆、第三方平台加固加密、渠道分发 完整教程(图文)
- Linux C编程——常用头文件
- JVM优化总结
- Xcode .a静态库编译
- 【VB】MSHFlexGrid中数据导入到Excel(机房问题)