UH2S1L6——循环语句
本章代码关键字
1 2 3 while ...do ...end repeat ...until ... for ...do ...end
while循环
while循环的结构如下:
1 2 3 4 5 while 循环条件表达式 do 当满足条件时就会执行该语句块的内容 ...... 当代码逻辑执行完,再次进行条件判断,符合条件就继续回到开头重新执行方法 end
例子
1 2 3 4 5 num = 0 while num < 5 do print (num) num = num + 1 end
repeat…until循环
有点类似于do...while
循环,不管满不满足条件都会先执行一次循环体内的代码
区别是,until
关键字后跟的是结束条件表达式,当满足条件时才跳出循环,否则继续循环
1 2 3 repeat 第一次进入或者不满足结束条件时就执行这里的代码块 until 结束条件表达式
例子
1 2 3 4 5 num = 0 repeat print (num) num = num + 1 until num > 5
for循环
数字for循环的结构如下:
1 2 3 4 5 for 循环变量 = 起始值, 结束值, 步长(可不填,默认1 ) do 当循环变量比结束值小时(起始值<结束值,步长大于>0 )或循环变量比结束值大时(起始值>结束值,步长大于<0 ) 执行这里的代码块 执行结束,将循环变量加上步长 end
除了这种for循环以外,Lua里也有类似于C#的foreach那样的for循环存在,可见表的迭代器遍历部分
例子
1 2 3 4 5 6 7 8 9 10 11 12 13 14 for i = 1 , 5 do print (i) end print ("**********" )for i = 1 , 10 , 2 do print (i) end print ("**********" )for i = 5 , 1 , -1 do print (i) end
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 2 3 4 5 ********** 1 3 5 7 9 ********** 5 4 3 2 1