swift循环语句和循环控制语句 – Swift最新教程

上一章Swift教程请查看:swift条件语句
当你需要多次执行一个代码块时,可能会出现这种情况,通常,语句是按顺序执行的:先执行函数中的第一个语句,然后执行第二个语句,依此类推。
编程语言提供了各种控制结构,允许更复杂的执行路径。
循环语句允许我们多次执行一个语句或一组语句,以下是大多数编程语言中循环语句的一般形式:

swift循环语句和循环控制语句 – Swift最新教程

文章图片
Swift编程语言提供了以下类型的循环来处理循环需求。
编号 循环类型和描述
1 for-in 此循环为范围、序列、集合或级数中的每个项执行一组语句。
2 While循环 当给定条件为真时,重复一个或一组语句。它在执行循环体之前测试条件。
3 repeat… while循环 类似于while语句,只是它在循环体的末尾测试条件。
for-in循环语句for-in循环遍历项的集合,如数字范围、数组中的项或字符串中的字符。
语法
在Swift编程语言中,for-in循环的语法是-
for index in var { statement(s) }

swift循环语句和循环控制语句 – Swift最新教程

文章图片
var someInts:[Int] = [10, 20, 30]for index in someInts { print( "index: \(index)") }

While循环语句只要给定条件为真,Swift编程语言中的while循环语句就会重复执行目标语句。
语法
在Swift编程语言中,while循环的语法为?
while condition { statement(s) }

这里的语句可以是单个语句,也可以是一个语句块。条件可以是任何表达式,当条件为真时,循环迭代。当条件变为false时,程序控制传递到紧接循环之后的行。
数字0、字符串“0”和“”、空列表()和undef在布尔上下文中都为false,其他所有值都为true。否定一个真的值!或not返回一个特殊的假值。
swift循环语句和循环控制语句 – Swift最新教程

文章图片
while循环的关键在于循环可能永远不会运行,当条件被测试并且结果为false时,循环体将被跳过,while循环之后的第一个语句将被执行。
例子
var index = 10while index < 20 { print( "index: \(index)") index = index + 1 }

这里我们使用比较运算符< 来比较变量索引相对于20的值。当index的值小于20时,While循环继续执行它旁边的代码块,当index的值变为20时,它就出来了。
Do…while循环不像for和while循环在循环的顶部测试循环条件,repeat…while循环在循环的底部检查它的条件。
do……while循环类似于while循环,除了一个repeat…while循环保证至少执行一次。
语法
Swift中repeat…while语法如下:
repeat { statement(s); } while( condition );

应该注意的是,条件表达式出现在循环的末尾,因此循环中的语句在测试条件之前执行一次。如果条件为真,则控制流跳回repeat,并再次执行循环中的语句,这个过程不断重复,直到给定的条件变为假。
数字0、字符串“0”和“”、空列表()和undef在布尔上下文中都为false,其他所有值都为true,否定一个真的值!或not返回一个特殊的假值。
swift循环语句和循环控制语句 &#8211; Swift最新教程

文章图片
例子
var index = 10repeat { print( "Value: \(index)") index = index + 1 } while index < 20

循环控制语句循环控制语句改变了正常序列的执行,当执行离开范围时,在该范围中创建的所有自动对象都将被销毁。
Swift支持以下控制语句。
编号 控制语句及说明
1 Continue语句 该语句告诉循环停止正在执行的操作,并在循环的下一次迭代开始时重新开始。
2 Break语句 终止循环语句,并将执行转移到紧随循环之后的语句。
3 Fallthrough语句 fallthrough语句模拟了Swift切换到c风格切换的行为。
Swift continue语句Swift中的continue语句告诉循环停止正在执行的操作,并在循环的下一次迭代开始时重新开始。
对于For循环,continue语句将导致条件测试并增加循环的执行部分。对于while循环,do……while循环时,continue语句使程序控件传递给条件测试。
swift循环语句和循环控制语句 &#8211; Swift最新教程

文章图片
例子
var index = 10repeat { index = index + 1 if( index == 15 ){ continue } print( "Index: \(index)") } while index < 20

Swift break语句【swift循环语句和循环控制语句 – Swift最新教程】C编程语言的break语句?以下两种用法
  • break语句时遇到在一个循环,这个循环是立即终止和恢复程序控制下一条语句后循环。
  • 它可以用于终止switch语句。
如果你正在使用嵌套循环(也就是一个循环内包含另一个循环),那么break语句将停止最内层循环的执行并开始执行下一行的代码块。
语法
在Swift中break语句的语法如下?
swift循环语句和循环控制语句 &#8211; Swift最新教程

文章图片
Break语句
例子
var index = 10repeat { index = index + 1 if( index == 15 ){ break } print( "Index: \(index)") } while index < 20

Swift fallthrough语句Swift中的switch语句在第一个匹配的case完成时就完成执行,而不是像在C和c++编程语言中那样在后续的case中失败。
switch语句在C和c++中的一般语法如下-
switch(expression){ case constant-expression : statement(s); break; /* 可选 */ case constant-expression : statement(s); break; /* 可选 */ /* 可以有任意数量的case语句 */ default : /* 可选 */ statement(s); }

在这里,我们需要使用一个break语句从case语句中取出,否则执行控制将通过匹配的case语句下面可用的后续case语句。
语法
Swift中switch语句的一般语法如下
switch expression { case expression1 : statement(s) fallthrough /* optional */ case expression2, expression3 : statement(s) fallthrough /* optional */ default : /* Optional */ statement(s); }

如果我们不使用fallthrough语句,那么程序将在执行匹配的case语句之后从switch语句中出来。我们将通过以下两个示例来说明它的功能。
示例1
下面的例子演示了如何在Swift编程中使用switch语句,而不会出错
var index = 10switch index { case 100 : print( "Index: 100") case 10,15 : print( "Index: either 10 or 15") case 5 : print( "Index: 5") default : print( "default case") }

    推荐阅读