【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之间的奇数,同时也是一个整数
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之间的奇数,同时也是一个整数
相关文章推荐
- swift中流程控制:for in、while、do while、if、switch、continue、break...
- 【swift】15-0523 控制流---if switch
- 关于continue、break和fallthrough语句
- Swift-break-continue--与 OC 中的比较
- Swift中循环语句中的转移语句 break 和 continue
- switch,for,while,break,continue语句
- Python中的控制流(break & continue & pass )
- JavaScript If...Else、Switch、For、While、Break、Continue语句
- switch在循环中时 可以用continue替代break
- [转]break和continue在switch中,在循环中以及在循环中的switch的区别
- switch、break、continue
- switch中 break , continue 作用
- fall through switch的用法
- 04-01 Java switch、for、while、do while语句,循环嵌套,跳转语句break、continue、return
- switch、break、continue
- 2013.12.27 switch、break、continue
- Go中的switch fallthrough
- swift之控制转移语句,continue,break,fallthrough,return,带标签的语句
- A Byte of Python 笔记(4)控制流:if、for、while、break、continue
- printf、switch、for..each、break和continue——Java查缺补漏