您的位置:首页 > 移动开发 > Swift

【swift】15-0525 控制流---switch break continue fallthrough

2015-05-25 10:50 253 查看
switch 区间匹配

let 存款 = 100

var 社会评价: String

Switch 存款 {

case 1…100 : 社会评价 = “贫困”

case 101…10000 : 社会评价 = “脱贫”

case 10001…100_000 : 社会评价 = “温饱”

default : 社会评价 = “富裕”

}

switch中条件不能有冲突,switch语句会执行完第一个符合条件的语句后结束。

switch 元祖匹配

let 坐标 = (1,3)

switch 坐标 {

case (0, 0) : “原点”

case (_, 0) : “在X轴上”

case (0, _) : “在Y轴上”

case (-2…2, -2…2) : “在指定的值域范围内”

default : “非指定的值域范围”

}

switch 值绑定

let 坐标 = (1, 4)

switch 坐标 {

case (let x, 0) : “在X轴上的值是(x)”

case (0, let y) : “在Y轴上的值是(y)”

case (let x, let y) : “在X轴上的值是(x),在Y轴上的值是(y)”

} //这里的x,y是临时变量,在其他地方是失效的。

switch 值筛选

let 坐标 = (-1, 2)

switch 坐标 {

case let(x, y) where x == y: “((x),(y))的横坐标和纵坐标相等”

case let(x, y) where (x > 0 && y > 0: “((x),(y))在第一象限”

case let(x, y) : “在X轴上的值是(x),在Y轴上的值是(y)”

}

控制转移语句 continue

一个循环停止,进入下一个循环,resume。

let 网址列表 = [“qq.com”,”google.hk”,”baidu.com”,”facebook.com”]

for 网址 in 网址列表 {

swtich 网址 {

case let url where (网址.hasPrefix(“facebook”) || 网址.hasSuffix(“hk”)) : continue //遇到敏感的网址直接结束本次循环,执行下一次循环。

default : println(“即将为您打开(网址)”)

}

}

break语句

与continue的区别在于continue只用于循环中,而break可以用于循环和switch中。

跳出一个循环,执行下面的语句

let 学历网址列表 = [“developer.apple.com”,

“google.com”,

“baidu.com”,

“qq.com”,

“wikipedia.org”,

“sf.net”,

“github.com”,

“jamesonquave.com”]

for 网址 in 学习网址列表 {

if 网址.hasSuffix(“qq.com”) {

break

}

println(网址)

}

//对网址进行分类

let url = “”

var 可能的网址分类 : String? //不给值默认为空

switch url {

case “developer.apple.com”,”wikipedia.org” : 可能的网址分类 = “知识库网站”

case “github.com”,”sf.net” : 可能的网址分类 = “swift源码站”

case “developer.apple.com”,”wikipedia.org” : 可能的网址分类 = “知识库网站”

case “jamesonquave.com” : 可能的网址分类 = “个人博客”

case “google.com”,”baidu.com” : 可能的网址分类 = “资料搜索”

default : break

}

if let url2 = 可能的网址分类 {

println(“这个网址是(url2)”)

} else {

println(“您的网址不是可能的swift类学习网址”)

}

println(“学习结束”)

fallthrough

let 数字 = 3

switch 数字 {

case 1,3,5,7,9 : print(“(数字)是1到10之间的奇数”)

fallthrough

default : print(“,同时也是一个整数”)

} //两句都执行,结果为 3是1到10之间的奇数,同时也是一个整数
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: