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

本篇到此为止,希望这对你有帮助,如果有错误或是有需要补充的地方,望告知。


种一棵树最好的时间是在十年前,而后是现在。

Loading Disqus comments...
Table of Contents