前端之家收集整理的这篇文章主要介绍了
Swift基础篇——枚举,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
枚举
import Foundation
enum Method{
case Add,Sub,Mul,Div
}
var m: Method = .Add
var m1 = Method.Add
switch (Method.Add){
case Method.Add:
print("加法")
.Sub:
print(@H_301_43@"减法")
.Mul:
print(@H_301_43@"除法")
.Div:
print(@H_301_43@"乘法")
}
enum Method2: Int{
enum Method3: Int{
case Add = 5,Div
}
enum Method4: Double{
,Sub = 6.0,Mul = 6.1,Div = 8.0
}
print(Method4.Sub.rawValue)
enum Method5: String{
case Add = @H_301_43@"add",Sub = @H_301_43@"sub",Mul = @H_301_43@"mul",Div = @H_301_43@"div"
}
let m2 = Method5(rawValue: @H_301_43@"add")
print(m2)
func chooseMethod(op:String)
{
if let opE = Method5(rawValue: op){
switch (opE){
case .Add:
print(@H_301_43@"加法")
.Sub:
print(@H_301_43@"减法")
.Mul:
print(@H_301_43@"除法")
.Div:
print(@H_301_43@"乘法")
}
}
}
enum lineSegmentDescriptor{
case StartAndEndPattern(start:Double,end:Double)
case StartAndLengthPattern(start: Double,length:Double)
}
var lsd = lineSegmentDescriptor.StartAndLengthPattern(start: 0.0,length: 100.0)
lsd = lineSegmentDescriptor.StartAndEndPattern(start: 50.0)
switch lsd
{
case let .StartAndEndPattern(s,e):
print(@H_301_43@"start = \(s) end = \(e)")
.StartAndLengthPattern(let s,let l):
print(@H_301_43@"start = \(s) lenght = \(l)")
}