1.枚举语法:
enum Platform{
case Windows
case Linux
case MacOs
}
var myPlatform = platform.windows
myPlatform= .Linux
switch myPlatform{
case .Windows:
println(“这是Windows平台”)
default:
println("不支持该平台”)
}
2.关联值
enum Password{case DigitPassword(Int)
case StringPassword(String)
}
var password = Password.DigitPassword(4078385)
password = Password.StringPassword(“admin”)
switch password{
case .DigitPassword(let digitPwd):
println(“数字密码是:\(digitPwd)”)
case .StringPassword(let strPwd)
println(“字符密码是:\(strPwd)”)
}
3.原始值
enum ASCIIControlCharacter:Character{case Tab = “\t"
case LineFeed = “\n"
case CarriageReturn = “\t"
}
4.示例代码:
enum Compasspoint{
case north
case South
case East
case West
}
var dir = Compasspoint.East
dir = .West
switch dir{
case .north:
print("north")
default:
print("Other")
}
enum Barcode{
case UPCA(Int,Int,Int)
case QRcode(String)
}
var productBarcode = Barcode.UPCA(3,4,8)
productBarcode = .UPCA(3,4,5)
productBarcode = .QRcode("asdf")
switch productBarcode{
case .UPCA(3,5):
println("1")
case var .QRcode(a):
println("2")
default:
println("3")
}
enum Planet:Int{
case Mercury = 1,Venus,Earth,Mars,Jupiter,Saturn,Uranus,Neptune
}
println(Planet.Earth.rawValue)
let possiblePlanet = Planet(rawValue: 7)
//let possiblePlanet = Planet.fromraw(7)
let planetFind = 9
if let somePlanet = Planet(rawValue: planetFind){
println("Found")
}
else{
println("No Found")
}
原文地址:https://www.jb51.cc/swift/327164.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。