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 流程控制