一、循环结构
循环结构用来在指定条件下多次重复执行同一组语句。使用循环结构可以减少代码的编写量和时间。Swift提供了3种用于循环的语句:while语句、repeat-while语句、for语句。本章内容只对前两种语句加以说明。
1、while语句
while语句是比较简单的循环语句。它的语法形式如下:
while(表达式)
语句
其中,表达式就是循环条件。在while循环语句执行时,首先要进行条件的判断,当条件成立时就执行语句,当条件不成立了,就跳出循环。
代码示例:
2、repeat-while语句
repeat-while语句是while语句的一种变化形式。在repeat-while循环中,循环体种的语句会先执行一次,然后才开始检测循环条件是否满足。它的语法形式如下:
repeat
语句
while(条件表达式)
其中,当repeat-while语句开始执行时,先执行一遍repeat下面的语句,再对while中的条件进行判断。当条件为真时,再执行repeat后面的语句。当条件为假时,就跳出repeat-while循环。
注意:repeat-while和while语句不同的地方是while语句的循环体有可能一次也不执行,但repeat-while语句的循环体至少执行难一次。
代码示例:
二、跳转语句
跳转语句,一般用在需要提前跳出循环,或者某种条件下不执行循环而执行下一次新的一轮循环时。Swift支持5种跳转语句:continue、break、fallthrough、return、throw。以下将对前4种跳转语句进行详细的介绍,至于最后一种,会在后面进行详细讲解。
1、continue:一旦执行该语句,程序就会结束本次循环而执行循环体的下一次循环。
2、break:如果使用了break语句,一旦执行该语句,将终止整个循环的执行,开始执行循环之后的代码。(注意:break不仅可以结束其所在的循环,还可以结束其外层循环)
3、fallthrough:用于switch代码块中,实现依次执行每个case语句。(注意:fallthrough只可以放在case后面,不可以放到default后),它的功能和oc中break放在case后面效果时一样的。
4、return:一旦在循环体内执行到一个return语句,return将会结束该方法,循环也就随之结束。
三、标签语句
标签语句可以使用标签来标记一个循环体或者是switch代码块,当使用break或者continue语句时,带上这个标签,就可以控制跳转该标签代表的循环或者switch了。标签语句一般放在循环或者switch语句的行首,并且使用冒号分割。
标签名称:while 表达式 {
语句
}
同样的方式,适用于其它循环体和switch代码块,标签语句一般使用在break或者continue语句后面,这样就可以控制跳转该标签所代表的循环或者switch了。
代码示例:
var num = 0
var i = 1
loop : while num <=100 {
print("开始第\(i)次")
switch num {
case 0...60:
print("e")
case 61...70:
print("d")
case 71...80:
print("c")
break loop
case 81...90:
print("b")
default:
print("a")
}
num += 10
i = i +1
print("第\(i)次循环结果\n")
}
运行结果:开始第1次
e
第2次循环结果
开始第2次
e
第3次循环结果
开始第3次
e
第4次循环结果
开始第4次
e
第5次循环结果
开始第5次
e
第6次循环结果
开始第6次
e
第7次循环结果
开始第7次
e
第8次循环结果
开始第8次
d
第9次循环结果
开始第9次
c