Lua if...else 語句

Lua 流程控制 Lua 流程控制


if...else 語句

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

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

if(布爾表達(dá)式)
then
   --[ 布爾表達(dá)式為 true 時(shí)執(zhí)行該語句塊 --]
else
   --[ 布爾表達(dá)式為 false 時(shí)執(zhí)行該語句塊 --]
end

在布爾表達(dá)式為 true 時(shí)會if中的代碼塊會被執(zhí)行,在布爾表達(dá)式為 false 時(shí),else 的代碼塊會被執(zhí)行。

Lua認(rèn)為false和nil為假,true 和非nil為真。要注意的是Lua中 0 為 true。

if 語句流程圖如下:

實(shí)例

以下實(shí)例用于判斷變量 a 的值:

--[ 定義變量 --]
a = 100;
--[ 檢查條件 --]
if( a < 20 )
then
   --[ if 條件為 true 時(shí)執(zhí)行該語句塊 --]
   print("a 小于 20" )
else
   --[ if 條件為 false 時(shí)執(zhí)行該語句塊 --]
   print("a 大于 20" )
end
print("a 的值為 :", a)

以上代碼執(zhí)行結(jié)果如下:

a 大于 20
a 的值為 :	100

if...else if...else 語句

Lua if 語句可以與 else if...else 語句搭配使用, 在 if 條件表達(dá)式為 false 時(shí)執(zhí)行 else if...else 語句代碼塊,用于檢測多個(gè)條件語句。

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

if( 布爾表達(dá)式 1)
then
   --[ 在布爾表達(dá)式 1 為 true 時(shí)執(zhí)行該語句塊 --]

else if( 布爾表達(dá)式 2)
   --[ 在布爾表達(dá)式 2 為 true 時(shí)執(zhí)行該語句塊 --]

else if( 布爾表達(dá)式 3)
   --[ 在布爾表達(dá)式 3 為 true 時(shí)執(zhí)行該語句塊 --]
else 
   --[ 如果以上布爾表達(dá)式都不為 true 則執(zhí)行該語句塊 --]
end

實(shí)例

以下實(shí)例對變量 a 的值進(jìn)行判斷:

--[ 定義變量 --]
a = 100

--[ 檢查布爾條件 --]
if( a == 10 )
then
   --[ 如果條件為 true 打印以下信息 --]
   print("a 的值為 10" )
elseif( a == 20 )
then   
   --[ if else if 條件為 true 時(shí)打印以下信息 --]
   print("a 的值為 20" )
elseif( a == 30 )
then
   --[ if else if condition 條件為 true 時(shí)打印以下信息 --]
   print("a 的值為 30" )
else
   --[ 以上條件語句沒有一個(gè)為 true 時(shí)打印以下信息 --]
   print("沒有匹配 a 的值" )
end
print("a 的真實(shí)值為: ", a )

以上代碼執(zhí)行結(jié)果如下:

沒有匹配 a 的值
a 的真實(shí)值為: 	100

Lua 流程控制 Lua 流程控制