for-in循环:执行固定次数的 *** 作,或 *** 作一个序列(如数组)中的每一项.
//序列中的每项都参与. for与in之间加一个代替每项的名.for i in 1...100 { sum += i}sum //5050 //只需循环固定次数,可以省略项名. for _ in 1...3 { print("学习swift")}2.while循环
while循环执行一系列 *** 作,直到条件不成立. 使用场合:执行次数未知 格式:while 条件 { 语句 }
var i = 1var sum = 0while i <= 100 { sum += i i += 1}sum //5050i //1013. if else条件判断
var money = falseif money { print("买车买房")} else { print("注孤生") //打印"注孤生"}4. 循环中的判断:continue break
continue 结束本次循环,break 结束整个循环
for i in 1...5 { if i == 3 { for i in 11...15 { if i == 13 { break } print(i,terminator: " ") //输出不换行,以空格隔开 } } print(i,terminator: " ")}//输出:1 2 11 12 3 4 5 for i in 1...5 { if i == 3 { continue } print(i,terminator: " ")}//输出:1 2 4 55.早退语句guard
早退语句: 在必需条件不满足的早期阶段退出执行. 语句关键字 guard,与if相似. 属于条件强调意味很浓的语句. guard let 与 if let相似,用于可选类型.guard有助于提升代码可读性.
var hascar = truevar credit : Int? = 5 //?就表示允许参数赋值为nilfunc 打的() { guard hascar else { print("没有出租车!") return } print("有出租车!") guard let mycredit = credit,mycredit >= 6 else{ print("客户信用值低!") return } print("欢迎乘坐本公司出租车!")}打的()/*输出:有出租车!客户信用值低!*func checkup(person: [String: String?]) { // 检查身份z,如果身份z没带,则不能进入考场 guard let ID = person["ID"] else { print("没有身份z,不能进入考场!") return } // 检查准考证,如果准考证没带,则不能进入考场 guard let examNumber = person["examNumber"] else { print("没有准考证,不能进入考场!") return } // 身份z和准考证齐全,方可进入考场 print("您的身份z号为:\(ID),准考证号为:\(examNumber)。请进入考场!")}checkup(person: ["ID": "123456"]) // 没有准考证,不能进入考场!checkup(person: ["examNumber": "654321"]) // 没有身份z,不能进入考场!checkup(person: ["ID": "123456","examNumber": "654321"]) // 您的身份z号为:123456,准考证号为:654321。请进入考场!6.switch语句
let 坐标 = (1,1) //"坐标在45度对角线"switch 坐标 {case (0,0): //条件符合则后面的case跳过,作用与OC一样,只是省略了return print("原点")case (let x,0): //绑定临时变量,以便在执行语句中使用. print("坐标在X轴上:",x)case (let x,let y) where x == y: //where判断关键字,符合where后的条件才执行 print("坐标在45度对角线")case (-2...2,-2...2): print("坐标在2*2范围内")default: break}
参考自
SwiftV课堂视频源码
http://www.cnblogs.com/Rinpe/p/5221817.html
以上是内存溢出为你收集整理的swift3 控制流全部内容,希望文章能够帮你解决swift3 控制流所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)