2 Lua变量、运算符及控制结构

时间:2022-09-08 18:30:21

1、Lua语言定义

标识符不能以数字作为起始符,也要避免下划线(_)接大写字母,因为这是Lua自身保留的,如_Start。     常量:全大写和下划线,如MY_CONSTANT     变量:第一个字母小写,如myValue     全局变量:第一个字母用小写g表示,如gMyGlobal     函数名:第一个字母大写,如function MyFunction() Lua中,两个减号--表示该行为注释,整段注释则用 --[[...--]]  

2、变量

在Lua中,变量默认是全局的,不需要在使用前声明,可以在任何地方引入需要的变量。同样,不需要指定变量的类型,变量类型取决于用户赋给它的值,所以通过简单的赋值就可以更改变量的类型。可以使用type函数来判断变量的类型。Lua有5种变量类型:nil、Boolean、string、Number和table。①nil    表示这个变量还没有被赋值,如果给一个变量赋值为nil,那么实际上表示删除该变量的意思。②Boolean    只有两个值:true和false③string    Lua字符串可以小到一个字符,也可以包含百万字符以上。特殊的字符串:\a响铃  \b退格  \f换页符  \n换行符  \r换行符  \t制表符  \v垂直制表符  \\反斜杠  \"双引号 \'单引号  \[左方括号  \]右方括号    Lua会在合理情况下自动转换数字和字符。④Number    双精度浮点数,Lua没有整数类型。⑤table    按大牛的话说,table是Lua中最强大也是最容易造成困扰的数据类型,以后会详细讨论到。现在我们把它当成数组来用先。

3、运算符

    算术运算符,+-*/    关系运算符,==等于,~=不等于,如果使用==比较两个table,只有他们是同一个对象时才true,因为变量只是table对象的引用,不能直接比较里面的值。    逻辑运算符,小写,and、or、not(返回参数相反值)。在Lua中,false和nil会被逻辑运算符都当成false,其他值为true。

4、控制结构

    ①if    if 条件 then     ...     end    还可以使用elseif关键字来添加一系列条件,在AI脚本中,很有用,因为Lua不支持case句式。    ②while和repeat    while 条件 do    ...     end    repeat控制结构程序至少会被执行一次。    repeat    ...    until 条件        ③for    for 变量值范围 do    ...    end    ④break    从循环结构中强制退出