lua 1 基本語法和注意事項
阿新 • • 發佈:2018-11-10
筆記總結自:
http://www.runoob.com/lua/lua-data-types.html
基本資料型別:
資料型別 | 描述 |
---|---|
nil | 這個最簡單,只有值nil屬於該類,表示一個無效值(在條件表示式中相當於false)。 |
boolean | 包含兩個值:false和true。 |
number | 表示雙精度型別的實浮點數 |
string | 字串由一對雙引號或單引號來表示 |
function | 由 C 或 Lua 編寫的函式 |
userdata | 表示任意儲存在變數中的C資料結構 |
thread | 表示執行的獨立線路,用於執行協同程式 |
table | Lua 中的表(table)其實是一個"關聯陣列"(associative arrays),陣列的索引可以是數字或者是字串。在 Lua 裡,table 的建立是通過"構造表示式"來完成,最簡單構造表示式是{},用來建立一個空表。 |
Lua認為false和nil為假,true和非nil為真。
要注意的是Lua中 0 為 true
注意以下結果輸出:
-- x 是未定義的變數 print(type("Hello world")) --> string print(type(10.4*3)) --> number print(type(print)) --> function print(type(type)) --> function print(type(true)) --> boolean print(type(nil)) --> nil print(type(type(X))) --> string print(type(X)) --> nil
判斷 nil 的資料型別要注意:
-- 判斷資料型別 nil 要加上引號 if type(x) == 'nil' then print("true") else print("false") end
Lua 預設只有一種 number 型別 -- double(雙精度)型別(預設型別可以修改 luaconf.h 裡的定義)
print(type(2)) --> number 表示 double print(type(2.2)) print(type(0.2)) print(type(2e+1)) print(type(0.2e-1)) print(type(7.8263692594256e-06))