Lua的基本语法
第一章 起点
1.1、全局变量:Lua中默认的变量为全局变量,只有加上 local 才是局部变量,全部变量不赋值,直接访问得到的结果是 nil,同时把一个变量直接赋值为 nil 就是把这个变量给删除
1.2、词法约定:字母数字下划线组成,字母开头。
Lua 大小写敏感。
单行注释: –
多行注释: –[[ –]]
1.3、Lua的关键字:if then elseif end while for in do false true nil and not or repeat until local function return break
Lua中只有 false 和 nil 为假 ,其余的都为真。
0在 Lua 中为真值,Lua 的table 列表索引值是从 1 开始的,而不是从 0 开始的。
Lua中的变量不需要类型的声明,没有赋值之前变量的类型都是未定的。
第二章 类型和值
Lua中的数据类型:nil boolean number string userdata function thread table
变量没有预定义的类型,每个变量都可以包含任何一种类型的值。
2.1、Nil:
nil Lua中的特殊类型,一个全局变量没有赋值之前都是 nil ,给一个全局变量赋值 nil 可以删除该变量。
2.2、Booleans:
两个取值 false 和 true。但是 Lua 中只有 false 和 nil 为假值,其余的值都是真。包括 0 和 空字符串。
2.3、string:
“” ”括起来的都是字符串,
[[
]]括起来的字符串可以包含多行
string可以和number进行转化
print("10" + 2) --> 12
print("22" * 2) --> 44
print("number" + 2) --> error
.. 在Lua中是字符串连接符,当在一个数字的后面写 .. 时,必须加上空格以防止被解释错误。
print(10 .. 20) --> 1020
print(10..20) -->error
tonumber()函数是将字符串转化为数字,tostring()函数是将数字转化为字符串。
2.4、Functions:
函数可以存储在变量中,也可以作为函数的参数,可以作为返回值。在Lua中函数就是一个类型。
第三章 表达式
3.1、算术运算符:
二元运算符:+ - * / ^ (加减乘除幂)
一元运算符:- (负值)
3.2、关系运算符:
= < <= == ~= (在Lua中 ~= 是不等于)
这些操作符返回是 false 和 true
== 和 ~= 比较的类型如果不一致 Lua就认为是 false <