lua中文教程(第二章 类型和值)

一 总览

      1 lua是动态类型语言,变量不需要类型定义。lua中有8个基本的类型,分别为:nil,boolean,number,string,userdata,function,thread,table。函数type可以测试给定变量的值或者类型。

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

     2 变量没有预定义的类型,每一个变量都可能包含任一种类型的值。
print(type(a)) --> nil ('a' is not initialized)
a = 10
print(type(a)) --> number
a = "a string!!"
print(type(a)) --> string
a = print -- yes, this is valid!
a(type(a)) --> function

二 nil

    lua中的特殊类型,他只有一个值nil,一个全局变量没有被赋值以前都为nil,给全局变量赋值nil可以删除该变量。

三 Booleans

     两个取值false和true。但要注意Lua中所有的值都可以作为条件。在控制结构的条件中除了false和nil为假,其他值都为真。所以Lua认为0和空串都是真。

四 Numbers

    表示实数,Lua中没有整数。Lua的numbers可以处理任何长整数不用担心误差。你也可以在编译Lua的时候使用长整型或者单精度浮点型代替numbers。

原文地址:https://www.cnblogs.com/lancidie/p/1730485.html