swift学习笔记

第四章 控制流

2017-07-13  本文已影响0人  运柱

for-in循环

for-in循环与c++的for循环有些相像,但没有更新循环控制变量的处理。

let numberOfLegs = [“spider”: 8, “ant”: 6, “cat”: 4]

for (animalName, legCount) in numberOfLegs {

Statement

}  //for-in循环遍历字典

while循环,repeat-while循环

while condition {

Statement

}

repeat {

Statement

} while condition

其中repeat-while循环与c++的do-while循环类似。

switch

与c++不同,swift的switch语句不会贯穿,不需要每个case都加上break,除非有意如此,在需要贯穿特性的case分支后加fallthrough,表示贯穿到下一分支。

swift的switch语句比c++的switch灵活得多。可以多个条件组合成一个case分支,用逗号“,”分开;case分支还可以区间匹配,

switch someCondition {

Case 0:

Case 1..<5:

Case 5…10:

}

元组匹配,

switch someCondition {

Case (0, 0):

Case (0, _):

Case (_, 0):

case (-2…2, -2…2):

Default:

}

还可以用where添加额外的条件,

Switch point {

Case let (x, y) where x == y:

Case let (x, y) where x == -y:

Case let (x, y):

}

另外,swift还添加了c++没有的guard语句,用于提前退出,当然c++可以通过if语句来实现。guard语句的用法如下,

func greet(person: [String: String]) {

guard let name = person[“name”] else {

return

}

}

上一篇下一篇

猜你喜欢

热点阅读