加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

swift学习:9.枚举

发布时间:2020-12-14 02:12:42 所属栏目:百科 来源:网络整理
导读: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

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")

}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读