swift中幽灵般存在的switch

13. October 2015 Swift 0

//学了几门语言,没有一门可以做到switch这样随心所欲,你想到的,它就可以做到,犹如六脉神剑,变换无穷

import Foundation

//可以为字符串,可以为浮点型,可以为元组
var li = “lijian”

switch li {

case let str where str.hasSuffix(“an”):

println(“含有目标字符串”)

fallthrough

//可以继续往下执行

case “lijian”,”li”:

println(“ddd”)

default:

   println(“haha”)

}

//—————————————————-

let coor = (10,0)

switch coor {

case (0…10,0…90):

println(“(coor.0),(coor.1)”)

case (_,0):

println(“use_ output (10,0)”)

case let (x,y) where x == y:

println(“相等”)

case let (x,y) where x == -y:

println(“相反数”)

case (let x,0):

println(“输入第二个坐标是0的元组”)

case (let x,let y):

println(“accept all”)

// default 其实不是必须的,只要可以包含所有的情况即可

//default:

//   println(“error”)}

由于switch语句不存在隐式贯穿,因此case块至少包含一条语句。

// 虽然只有几行代码,但其功能强大暴露无疑


Leave a Reply

Your email address will not be published. Required fields are marked *