7.6 Swift中switch提取枚举关联值

前端之家收集整理的这篇文章主要介绍了7.6 Swift中switch提取枚举关联值前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

/**

枚举相关值

可以让枚举值对应的原始值不是唯一的,而是一个变量.

每一个枚举可以是在某种模式下的一些特定值

后面加一个 元组

*/

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: 0.0,end: 50.0)

print("--------->")

print(lsd)

// 利用switch提取枚举关联值

switch lsd {

case let .StartAndEndPattern(s,e):

print("start = \(s) end = \(e)")

case .StartAndLengthPattern(let s,let l):

print("start = \(s) lenght = \(l)")

}

// 输出结果: start = 0.0 end = 50.0

猜你在找的Swift相关文章