Latest web development tutorials

Lua if…else 語句

Lua 流程控制 Lua流程控制


if...else 語句

Lua if 語句可以與else 語句搭配使用, 在if 條件表達式為false 時執行else 語句代碼塊。

Lua if...else 語句語法格式如下:

if(布尔表达式)
then
   --[ 布尔表达式为 true 时执行该语句块 --]
else
   --[ 布尔表达式为 false 时执行该语句块 --]
end

在布爾表達式為true 時會if中的代碼塊會被執行,在布爾表達式為false 時,else 的代碼塊會被執行。

Lua認為false和nil為假,true 和非nil為真。 要注意的是Lua中0 為true。

if 語句流程圖如下:

實例

以下實例用於判斷變量a 的值:

--[ 定义变量 --]
a = 100;
--[ 检查条件 --]
if( a < 20 )
then
   --[ if 条件为 true 时执行该语句块 --]
   print("a 小于 20" )
else
   --[ if 条件为 false 时执行该语句块 --]
   print("a 大于 20" )
end
print("a 的值为 :", a)

以上代碼執行結果如下:

a 大于 20
a 的值为 :	100

if...elseif...else 語句

Lua if 語句可以與elseif...else 語句搭配使用, 在if 條件表達式為false 時執行elseif...else 語句代碼塊,用於檢測多個條件語句。

Lua if...elseif...else 語句語法格式如下:

if( 布尔表达式 1)
then
   --[ 在布尔表达式 1 为 true 时执行该语句块 --]

elseif( 布尔表达式 2)
then
   --[ 在布尔表达式 2 为 true 时执行该语句块 --]

elseif( 布尔表达式 3)
then
   --[ 在布尔表达式 3 为 true 时执行该语句块 --]
else 
   --[ 如果以上布尔表达式都不为 true 则执行该语句块 --]
end

實例

以下實例對變量a 的值進行判斷:

--[ 定义变量 --]
a = 100

--[ 检查布尔条件 --]
if( a == 10 )
then
   --[ 如果条件为 true 打印以下信息 --]
   print("a 的值为 10" )
elseif( a == 20 )
then   
   --[ if else if 条件为 true 时打印以下信息 --]
   print("a 的值为 20" )
elseif( a == 30 )
then
   --[ if else if condition 条件为 true 时打印以下信息 --]
   print("a 的值为 30" )
else
   --[ 以上条件语句没有一个为 true 时打印以下信息 --]
   print("没有匹配 a 的值" )
end
print("a 的真实值为: ", a )

以上代碼執行結果如下:

没有匹配 a 的值
a 的真实值为: 	100

Lua 流程控制 Lua流程控制