Lua语言是一种动态语言,在这种语言中没有类型定义,每个值都带有自身的类型信息.
Lua语言中有8中基本数据类型:nil(空),boolean(布尔),number(数值),string(字符串),userdata(用户数据),function(函数),thread(线程),table(表).
nil
nil是一种只有一个nil值的类型,它的主要作用就是与其他又有值进行区分.nil表示无效值
比如:
--type是一个函数,返回一个字符串,它返回的是一个变量的类型
type(a) --> nil
a = 10
type(a) --> number
a = "string"
type(a) --> string
a = nil
type(a) --> nil
Boolean
Boolean类型有两个值,true和false.不过在Lua语言中,除了false和nil表示假,其他的都可以表示为真.
Lua语言中有三个常见的逻辑运算符:and,or,not.
and的操作符结果是:如果第一个操作符为假,我就返回第一个,不然返回第二个.
or的操作符结果是:如果第一个操作符为真,我就返回第一个,不然返回第二个.
not的操作符结果是Boolean值
4 and 5 -->5
nil and 5 -->nil
true or false -->true
false or "hi" -->"hi"
not nil -->true
not "hi" -->false