上一章Swift教程请查看:swift for-in循环语句
在本文中,你将学习在swift编程中创建while和repeat while循环。
在前一篇文章中,我们了解了forin循环,即在一定的时间内运行一组任务。在本文中,你将学习如何使用while和repeat..while,当迭代次数未知时作为for-in循环的一种替代方法。
while循环执行一组语句,直到条件变为false,当在第一次迭代开始之前迭代的次数未知时,最好使用这些类型的循环,Swift提供了两种while循环:
swift while循环此循环在每次遍历循环的开始处计算其条件。
while循环的语法为:
while (TestExpression) {
// statements
}
while循环如何工作?TestExpression是一个布尔表达式。
如果TestExpression被赋值为true,
- 执行while循环中的语句。
- 然后再次计算testexpression。
while循环流程图
文章图片
例1:While循环
var currentLevel:Int = 0, finalLevel:Int = 5
let gameCompleted = true
while (currentLevel <
= finalLevel) {
//play game
if gameCompleted {
print("You have passed level \(currentLevel)")
currentLevel += 1
}
}
print("while循环的外部")
在上面的程序中,变量currentLevel和finalLevel初始化为0,常量gameCompleted初始化为true。
在while循环的每个迭代中,它检查条件currentLevel < = finalLevel。如果条件返回true, while循环中的语句将被执行,否则循环将终止。
执行步骤
迭代 | 条件(currentLevel < = finalLevel) | 输出 |
1 | 0 < = 5 (true) | You have passed level 0 |
2 | 1 < = 5 (true) | You have passed level 1 |
3 | 2 < = 5 (true) | You have passed level 2 |
4 | 3 < = 5 (true) | You have passed level 3 |
5 | 4 < = 5 (true) | You have passed level 4 |
6 | 5 < = 5 (true) | You have passed level 5 |
7 | 6 < = 5 (false) | while循环的外部 |
repeat..while循环的语法是:
repeat {
// statements
...
} while (testExpression)
repeat……while循环如何工作?repeat…while循环体执行一次(在检查测试表达式之前),只有这样,才会检查testExpression。
如果testExpression被赋值为true,则执行循环体中的语句,并且再次执行testExpression,这个过程会一直进行下去,直到testExpression被赋值为false。
当testExpression为false时,repeat..while循环终止。
流程图的repeat…while循环
文章图片
例2:repeat…while循环
var currentLevel:Int = 0, finalLevel:Int = 5
let gameCompleted = true
repeat {
//play game
if gameCompleted {
print("You have passed level \(currentLevel)")
currentLevel += 1
}
} while (currentLevel <
= finalLevel)
print("在repeat while循环之外")
在上面的例子中,循环内的语句第一次执行,对于下一次迭代,它检查条件currentLevel < = finalLevel。
如果条件返回true, while循环中的语句将被执行,否则循环将终止。
执行步骤
迭代 | 条件(currentLevel < = finalLevel) | Output |
1 | 0 < = 5 (true) | You have passed level 0 |
2 | 1 < = 5 (true) | You have passed level 1 |
3 | 2 < = 5 (true) | You have passed level 2 |
4 | 3 < = 5 (true) | You have passed level 3 |
5 | 4 < = 5 (true) | You have passed level 4 |
6 | 5 < = 5 (true) | You have passed level 5 |
7 | 6 < = 5 (false) | 在repeat while循环之外 |
但是在while中,在执行语句之前,首先检查条件。
无限while循环如果测试表达式从不计算为false,则while和repeat..while循环执行无限次。
例3:无限while循环
while (true) {
print("Hello, World!")
}
repeat {
print("Hello, World!")
} while (true)
【swift while和repeat while循环语句 – Swift最新教程】当你运行该程序时,两个循环将执行print(“Hello, World!”)语句无数次。所以,你可以看到连续输出Hello, World!在控制台。
推荐阅读
- swift嵌套循环语句 – Swift最新教程
- swift for-in循环语句 – Swift最新教程
- swift switch条件分支语句 – Swift最新教程
- swift if,if…else语句 – Swift最新教程
- swift按位和移位操作符 – Swift最新教程
- swift三元条件运算符(三目运算符) – Swift最新教程
- swift运算符的优先级和结合性 – Swift最新教程
- swift操作符,使用语法和使用例子 – Swift最新教程
- swift使用注释的几种方式 – Swift最新教程