1. for-in循环
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 = 1
var sum = 0
while i <= 100 {
sum += i
i += 1
}
sum //5050
i //101
3. if else@R_403_390@
var money = false
if 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 5
5.早退语句guard
早退语句: 在必需条件不满足的早期阶段退出执行. 语句关键字 guard,与if相似. 属于条件强调意味很浓的语句. guard let 与 if let相似,用于可选类型.guard有助于提升代码可读性.
var hascar = true
var credit : Int? = 5 //?就表示允许参数赋值为nil
func 打的() {
guard hascar else {
print("没有出租车!")
return
}
print("有出租车!")
guard let mycredit = credit,mycredit >= 6 else{
print("客户信用值低!")
return
}
print("欢迎乘坐本公司出租车!")
}
打的()
/*输出:
有出租车!
客户信用值低!
*
func checkup(person: [String: String?]) {
// 检查身份证,如果身份证没带,则不能进入考场
guard let id = person["id"] else {
print("没有身份证,不能进入考场!")
return
}
// 检查准考证,如果准考证没带,则不能进入考场
guard let examNumber = person["examNumber"] else {
print("没有准考证,不能进入考场!")
return
}
// 身份证和准考证齐全,方可进入考场
print("您的身份证号为:\(id),准考证号为:\(examNumber)。请进入考场!")
}
checkup(person: ["id": "123456"]) // 没有准考证,不能进入考场!
checkup(person: ["examNumber": "654321"]) // 没有身份证,不能进入考场!
checkup(person: ["id": "123456","examNumber": "654321"]) // 您的身份证号为: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