Lua中的控制结构(流程控制)简明总结

(编辑:jimmy 日期: 2025/8/28 浏览:2)

在Lua中,所有的控制结构块都是以end作为结束标记。
控制结构的表达式结果可以是任何值,Lua下只有false和nil为假,其他值都为真。

1. if

复制代码 代码如下:
if 条件 then
    ...
end;  
 
if 条件 then
    ...
else
    ...
end;
 
if 条件 then
    ...
elseif 条件 then
    ...
else
    ...
end;

then关键字用来标记有条件的代码块的开始。

2. repeat

复制代码 代码如下:
repeat
    ...
until 条件

repeat关键字用来标记代码块的开始,until用来标记代码块的结束。控制结构的条件表达式位于until关键字之后。

3. while

复制代码 代码如下:
while 条件
do
    ...
end

repeat和while控制结构相似,都可以循环执行一段代码直到满足某个条件。
repeat控制结构在最后判断条件,代码块至少会被执行一次的。
while控制结构首先判断条件,如果为真,那么代码块会被执行,也可能永远不被执行。
while控制结构使用do关键字,用来标记程序块的开始。

4. for

复制代码 代码如下:
for 变量=初值, 终点值, 步长
do
    ...
end
 
for 变量1, 变量2, ... 变量n in 表或枚举函数
do
    ...
end

循环次数只在第一次执行时候确定。初值, 终点值, 步长只会被计算一次,并且是在循环执行前。
循环结构中的变量是局部变量,一旦循环体结束后就被清除。

5. break

break语句用来退出当前循环。在循环体外部不可以使用。

6. return

return用来从函数返回结果。一个函数自然结束后会有一个默认的return。


一句话新闻

高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。