Lua 流程控制
Lua 编程语言流程控制语句通过程序设定一个或多个条件语句来设定。
在条件为 true 时执行指定程序代码,在条件为 false 时执行其他指定代码。
控制结构的条件表达式结果可以是任何值,Lua认为false和nil为假,true和非nil为真。
要注意的是Lua中 0 为 true:
实例
| if (0) |
| then |
| print("0 为 true") |
| end |
以上代码输出结果为:
Lua 提供了以下控制结构语句:
语句 |
描述 |
if 语句 |
if 语句 由一个布尔表达式作为条件判断,其后紧跟其他语句组成。 |
if...else 语句 |
if 语句 可以与 else 语句搭配使用, 在 if 条件表达式为 false 时执行 else 语句代码。 |
if 嵌套语句 |
你可以在if 或 else if中使用一个或多个 if 或 else if 语句 。 |
if语句
语法
| if(布尔表达式) |
| then |
| --[ 在布尔表达式为 true 时执行的语句 --] |
| end |
实例
| |
| a = 10; |
| |
| |
| if (a < 20) |
| then |
| |
| print("a 小于 20"); |
| end |
| print("a 的值为:", a); |
if...else 语句
语法
实例
| |
| a = 100; |
| |
| if (a < 20) |
| then |
| |
| print("a 小于 20") |
| else |
| |
| print("a 大于 20") |
| end |
| print("a 的值为 :", a) |
if...elseif...else 语句
语法
| if( 布尔表达式 1) |
| then |
| --[ 在布尔表达式 1 为 true 时执行该语句块 --] |
| |
| elseif( 布尔表达式 2) |
| then |
| --[ 在布尔表达式 2 为 true 时执行该语句块 --] |
| |
| elseif( 布尔表达式 3) |
| then |
| --[ 在布尔表达式 3 为 true 时执行该语句块 --] |
| else |
| --[ 如果以上布尔表达式都不为 true 则执行该语句块 --] |
| end |
实例
| |
| a = 100 |
| |
| |
| if (a == 10) |
| then |
| |
| print("a 的值为 10") |
| elseif (a == 20) |
| then |
| |
| print("a 的值为 20") |
| elseif (a == 30) |
| then |
| |
| print("a 的值为 30") |
| else |
| |
| print("没有匹配 a 的值") |
| end |
| print("a 的真实值为: ", a) |
Lua if 嵌套语句
语法
| if( 布尔表达式 1) |
| then |
| --[ 布尔表达式 1 为 true 时执行该语句块 --] |
| if(布尔表达式 2) |
| then |
| --[ 布尔表达式 2 为 true 时执行该语句块 --] |
| end |
| end |
实例
| |
| a = 100; |
| b = 200; |
| |
| |
| if (a == 100) |
| then |
| |
| if (b == 200) |
| then |
| |
| print("a 的值为 100 b 的值为 200"); |
| end |
| end |
| print("a 的值为 :", a); |
| print("b 的值为 :", b); |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· 单线程的Redis速度为什么快?
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码