# Lua if...else 語句
### 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...else if...else 語句
Lua if 語句可以與 else if...else 語句搭配使用, 在 if 條件表達式為 false 時執行 else if...else 語句代碼塊,用于檢測多個條件語句。
Lua if...else if...else 語句語法格式如下:
~~~
~~~
if(??布爾表達式??1)??then??--[??在布爾表達式??1??為??true??時執行該語句塊??--]??else??if(??布爾表達式??2)??--[??在布爾表達式??2??為??true??時執行該語句塊??--]??else??if(??布爾表達式??3)??--[??在布爾表達式??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 環境安裝
- Lua 數據類型
- Lua 變量
- Lua 循環
- Lua while 循環
- Lua for 循環
- Lua repeat...until 循環
- Lua 循環嵌套
- Lua break 語句
- Lua 流程控制
- Lua if 語句
- Lua if...else 語句
- Lua if 嵌套語句
- Lua 函數
- Lua 運算符
- Lua 字符串
- Lua 數組
- Lua 迭代器
- Lua table(表)
- Lua 模塊與包
- Lua 元表(Metatable)
- Lua 協同程序(coroutine)
- Lua 文件 I/O
- Lua 錯誤處理
- Lua 調試(Debug)
- Lua 垃圾回收
- Lua 面向對象
- Lua 數據庫訪問
- CoverPage