swift远征~控制语句
简单的记录一下控制语句的使用方法吧,和其它主流的语言相比没有太大区别。
if/else 条件判断
swift中的控制语句的条件部分不需要再加小括号了,其它的地方没有什么需要注意的。
var a = 10
var b = 20
if a > b {
print("a > b")
} else {
print("b > a")
}
switch case 选择
基本形式
条件可以是多个值,区间值,一个条件下的也可以有多个操作。
var situation = 404
var errorString : String = ""
switch situation {
case 100...107:
errorString = "我也不知道是啥"
case 201,202:
errorString = "就随便写吧"
case 400:
errorString = "你们懂就好"
print(errorString)
case 404:
errorString = "Not found"
print(errorString)
default:
errorString = "None"
}
使用值绑定和where子句筛选条件
如果不知道point是啥,可以参考集合篇中的“元组”
let point = (x : 1, y : 4)
switch point {
case let q1 where (point.x > 0) && (point.y > 0):
print("\(q1) 在第一象限")
case let q1 where (point.x < 0) && (point.y > 0):
print("\(q1) 在第二象限")
case let q1 where (point.x < 0) && (point.y < 0):
print("\(q1) 在第三象限")
case let q1 where (point.x > 0) && (point.y < 0):
print("\(q1) 在第四象限")
default:
print("条件外的情况")
}
循环
终于有一个可以多写两句的知识点了,上面的我真的不知道该讲些啥(尴尬)。
for-in
swift中没有c语言风格的循环了,基本的循环形式是
for i in 0..<5 {
print(i)
}
步长控制
由于去掉了c风格的for循环,因此swift下使用for in进行步长控制的时候需要这样写,其中to代表前闭后开,换成through则代表前闭后闭
for i in stride(from: 0, to: 10, by: 2) {
print(i)
}
while
while是重复未知次数的循环,满足条件则不断重复。
var num = 5
while num > 0 {
num -= 1
print(num)
}
repeat-while
与while区别在于repeat-while至少会执行一次后再判断是否退出循环
var num = 0
repeat{
num += 1
print(num)
} while num<5