Lua - while 循环



在 Lua 编程语言中,while 循环语句会重复执行目标语句,只要给定的条件为真。

语法

Lua 编程语言中 while 循环的语法如下:

while(condition)
do
   statement(s)
end

这里,语句可以是单个语句或语句块。条件可以是任何表达式,非零值都表示真。循环在条件为真的情况下迭代。

当条件变为假时,程序控制权将传递到循环后紧随其后的行。

流程图

while loop in Lua

这里,需要注意的关键点是 while 循环可能根本不会执行。当条件被测试且结果为假时,循环体将被跳过,并且将执行 while 循环后的第一个语句。

while 循环示例

示例:使用 while 循环打印指定范围内的数字

在这个示例中,我们展示了如何使用 while 循环打印从 10 到 19 的数字。我们初始化了一个整型变量 x,其值为 10。然后在 while 循环中,我们检查 x 是否小于 20,并在 while 循环内打印 x 的值,并将 x 的值加 1。while 循环将运行直到 x 变成 20。一旦 x 为 20,循环将停止执行,程序退出。

a = 10

while( a < 20 )
do
   print("value of a:", a)
   a = a+1
end

输出

当以上代码构建并执行时,它会产生以下结果:

value of a:	10
value of a:	11
value of a:	12
value of a:	13
value of a:	14
value of a:	15
value of a:	16
value of a:	17
value of a:	18
value of a:	19

示例:使用 while 循环打印数组元素

在这个示例中,我们展示了如何使用 while 循环打印数组的内容。我们创建一个整数数组 numbers 并初始化一些值。我们创建了一个名为 index 的变量来表示在迭代数组时的数组索引。在 while 循环中,我们检查 index 是否小于数组的大小,并使用索引表示法打印数组的元素。index 变量加 1,循环持续到 index 变成数组的大小,循环退出。

numbers = {10, 20, 30, 40, 50}
index = 1

while( index <= 5 )
do
   print("value of item:", numbers[index])
   index = index+1
end

输出

当以上代码构建并执行时,它会产生以下结果:

value of item:	10
value of item:	20
value of item:	30
value of item:	40
value of item:	50

示例:无限 while 循环

您可以使用 while 循环语句通过提供 "true" 作为测试条件来实现无限 while 循环。在这个示例中,我们展示了使用 while 循环的无限循环。它将持续打印数字,直到您按下 ctrl+c 以终止程序。

a = 10

while( true )
do
   print("value of a:", a)
   a = a+1
end

输出

当以上代码构建并执行时,它会产生以下结果:

value of a:	10
value of a:	11
value of a:	12
value of a:	13
value of a:	14
...
ctrl+c
lua_loops.htm
广告