Lua數據類型

Lua是一種動態類型語言,因此變數沒有類型,只有值具有類型。 值可以存儲在變數中,作為參數傳遞並作為結果返回。

在Lua中,雖然沒有可變數據類型,但有值的類型。 值的數據類型列表如下。

編號 值類型 描述
1 nil 用於區分值與某些數據或沒有(nil)數據。
2 boolean 包括truefalse作為值,通常用於條件檢查。
3 number 表示實數(雙精度浮點)數字。
4 string 表示字元數組。
5 function 表示用C語言或Lua編寫的方法。
6 userdata 表示任意C語言數據。
7 thread 表示獨立的執行線程,它用於實現協同程式。
8 table 表示普通數組,符號表,集合,記錄,圖形,樹等,並實現關聯數組。 它可以保存任何值(除了nil)。

類型函數

在Lua中,有一個名為type的函數能夠確定變數的類型。 以下代碼中給出了一些示例。

print(type("What is my type"))   --> string
t = 10

print(type(5.8*t))               --> number
print(type(true))                --> boolean
print(type(print))               --> function
print(type(nil))                 --> nil
print(type(type(ABC)))           --> string

當構建並執行上述程式時,它會生成以下結果 -

string
number
boolean
function
function
nil
string

默認情況下,在分配值或初始化之前,所有變數都將指向nil。 在Lua中,在條件檢查的情況下,零和空字元串認為是:true。 因此,使用布爾運算時必須小心。 在接下來的章節中,將更多地瞭解這些類型。


上一篇: Lua變數 下一篇: Lua運算符