while语句
while语句是一种先判断的循环结构,在不知道循环次数的情况下使用while循环。格式如下:
while 循环条件{
循环体
}
while循环没有初始化语句,只要循环条件为true,循环就会一直执行下去,直到循环条件为false。下面看一个简单的示例,代码如下:
1 | var number = 90
2 | while number < 200{
3 | number += 10
4 | }
5 | print("number = \(number)")
输出结果如下:
number = 200
上述程序代码要实现使number的值等于200。Number初始化的值为90,使用while循环,循环条件为number<200,在满足循环条件时,number会一直执行number+=10的操作,直到number的值大于或等于200。此时循环会中止。
要注意几点, while循环条件语句中只能写一个表达式,而且是一个布尔型表达式,那么如果循环体中需要循环变量,就必须在while语句之前对循环变量进行初始化。示例中先给number赋值为90,然后在循环体内部必须通过语句更改循环变量的值,否则会发生死循环。
提示:死循环对于单线程程序而言是异常灾难,但是在多线程程序中,死循环是必须的,死循环会出现在子线程中。例如游戏设计中对玩家输入装备的轮询,或是动画程序的播放都是需要死循环的。下面的代码是死循环的一般写法。
while ture{
循环体
}
repeatewhile语句
repeatewhile语句在考虑循环条件前先执行一次整个循环体,然后再继续重复循环直到条件为false。一般格式如下:
repeate{
语句组} while 循环条件
repeatewhile循环没有初始化语句,循环次数是不可知的,不管循环条件是否满足,都会先执行一次循环体,然后再判断循环条件。如果条件满足则执行循环体,不满足则停止循环。下面看一个示例代码:
1| var number = 90
2| repeat {
3| number += 10
4| }while number < 200
5| print("number :\(number)")
输出结果如下:number:200
示例与上一节的示例是一样的,都是要满足number的值不小于200。输出结果也是一样的。