编辑这个页面须要登录或更高权限!
循环在编程中用于重复特定的代码块。在本文中,您将学习在Kotlin编程中创建 while 和 do ... while 循环。
循环在编程中用于重复特定的代码块,直到满足特定条件(测试表达式为false)。
循环使计算机成为有趣的机器。想象一下,您需要在屏幕上打印一个句子50次。好吧,您可以通过使用print语句50次(不使用循环)来做到这一点。您需要打印一百万次句子怎么样?您需要使用循环。
您将了解两个循环while和do..while这篇文章的实例帮助中
如果您熟悉Java中的while和do ... while循环,那么您也已经熟悉Kotlin中的这些循环。
while 循环的语法为:
while (testExpression) { // while循环体内的代码 }
括号内的测试表达式是布尔表达式。
如果测试表达式的计算结果为true,
while 循环内的语句将被执行。
然后,再次对测试表达式求值。
这个过程一直进行到测试表达式被评估为 false 为止。
如果测试表达式的计算结果为false,
while循环终止。
//程序打印5次 fun main(args: Array<String>) { var i = 1 while (i <= 5) { println("Line $i") ++i } }
运行该程序时,输出为:
Line 1 Line 2 Line 3 Line 4 Line 5
注意,while 循环内的 ++i 语句 。在5次迭代之后,变量i将增加到6。然后,将测试表达式 i <= 5 求值为false,并终止循环。
如果循环的主体只有一个语句,则不必使用花括号{ }。
//程序计算1到100的自然数之和。 fun main(args: Array<String>) { var sum = 0 var i = 100 while (i != 0) { sum += i // sum = sum + i; --i } println("sum = $sum") }
运行该程序时,输出为:
sum = 5050
在这里,变量 sum 被初始化为 0 ,同时i初始化为 100。在while循环的每次迭代中,sum变量都被分配 sum + i,并且i的值减小1直到i等于0。
第1次迭代: sum = 0+100 = 100, i = 99 第2次迭代: sum = 100+99 = 199, i = 98 第3次迭代: sum = 199+98 = 297, i = 97 ... .. ... ... .. ... 第99次迭代: sum = 5047+2 = 5049, i = 1 第100次迭代: sum = 5049+1 = 5050, i = 0 (循环终止)
要了解有关测试表达式及其评估方式的更多信息,请访问比较和逻辑运算符。
do...while循环类似于while一个关键区别在于循环。do...while循环主体在检查测试表达式之前执行一次。
其语法为:
do { //do while循环体内的代码 } while (testExpression);
do主体内的代码执行一次(不检查testExpression)。 然后,检查测试表达式。
如果将 测试表达式 评估为true,则执行循环体内的代码,然后再次评估测试表达式。这个过程一直进行到测试表达式被评估为false为止。
当测试表达式评估为时false,do..while循环终止。
下面的程序计算用户输入的数字总和,直到用户输入0。
为了接受用户的输入,使用readline()函数。推荐阅读: Kotlin输入
fun main(args: Array<String>) { var sum: Int = 0 var input: String do { print("输入一个整数: ") input = readLine()!! sum += input.toInt() } while (input != "0") println("sum = $sum") }
当您运行程序时,输出将如下所示:
输入一个整数: 4 输入一个整数: 3 输入一个整数: 2 输入一个整数: -6 输入一个整数: 0 sum = 3