详解Lua中的数据类型

 Lua是动态类型语言,所以变量没有类型,仅值有类型。值可以被存储在变量中,作为参数传递,并作为结果返回。

在Lua中虽然我们没有变量的数据类型,但我们有类型的值。用于数值数据类型的列表在下面给出。

2015527115855400.jpg (638×356)
 函数类型

在Lua中有一个叫做函数类型,使我们能够知道变量的类型。如下一些例子给出了下面的代码。

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(type))                --> function
print(type(nil))                 --> nil
print(type(type(ABC)))           --> string

当建立并执行上面的程序,它在Linux下面会产生结果:

string
number
function
function
boolean
nil
string

默认情况下,所有的变量将指向nil ,直到他们被分配一个值或初始化。在Lua中,0和空字符串被认为是true,条件检查也是如此。因此,必须使用布尔操作时要小心。我们在下面的章节了解更多并使用这些类型。