Logo
Section 1 / 2

`while` 循环

开始使用 Kotlin 的循环结构来重复执行代码块。

检查点

`while` 循环

开始使用 Kotlin 的循环结构来重复执行代码块。

Kotlin 提供了三种标准的循环类型:

  • while 循环
  • do-while 循环
  • for 循环

作为程序员,你会很快熟悉 Kotlin 中的循环。让我们通过几个例子来学习,从 while 和 do-while 循环开始。

while 循环

Kotlin 的 while 循环与 Java 或 C 中的 while 循环具有完全相同的语法和语义:

1val input = 17 2var sqrtApprox = 1.0 3var delta = 1.0 4 5while (delta > 0.001) { // while 块会重复执行,直到误差低于阈值 6 sqrtApprox = 0.5 * (sqrtApprox + input / sqrtApprox) 7 delta = Math.abs((input - sqrtApprox * sqrtApprox) / (2 * sqrtApprox)) 8} 9 10println("sqrt($input) 大约是 $sqrtApprox")

while 关键字后跟一个条件。循环会重复执行代码块,直到该条件求值为 false。

这段代码示例将 input 的平方根近似到误差不超过 0.001 的精度。

do-while 循环

do-while 循环在每次迭代之后检查条件,而普通的 while 循环则在每次迭代之前检查条件。因此,do-while 循环至少会执行一次。这也是它通常用于需要首次迭代获取初始数据(例如用户输入)的情况:

1do { 2 print("> ") 3 val input = getUserInput() 4 println("用户输入了: $input") 5} while (input != ":q")

这里的优势在于,你可以将 input 变量的作用域限制在循环块内,这是使用普通 while 循环无法实现的。尽量缩小变量的作用域是一种良好的编程实践。

测验

注意: 练习题将在下一课关于 for 循环的内容中出现。

总结

Kotlin 提供了两种略有不同的 while 循环结构:

  • 普通的 while 循环在每次迭代前检查条件。
  • do-while 循环在每次迭代后检查条件。
  • 通常情况下,当迭代次数不确定时,使用 while 循环。

在下一课中,你将探索 Kotlin 的 for 循环,作为 while 循环的替代方案,并学习在什么情况下应优先选择哪种类型的循环。

Quiz

单选题

输出:
(无任何输出)

1 / 2

集合

`for` 循环