浅谈Lua语句

Lua支持大多数传统的语句,跟C语言和Pascal差不多。传统的语句包括:赋值,控制结构,流程调用等。Lua还支持一些不太传统的语句,例如多赋值(听起来有点怪,往下看就明白了)和局部变量声明(这个好像也是传统的吧)。

Lua 中的语句支持赋值,控制结构,函数调用,还有变量声明。

不允许空的语句段,因此 ;; 是非法的。

1 语句组 | chuncks

复制代码 代码如下:

chunck ::= {stat[';']}

([';'] 应该是表示语句组后面 ; 是可选项。)

2 语句块 | blocks

复制代码 代码如下:

block ::= chunck
stat ::= do block end

可以将一个语句块显式地写成语句组,可以用于控制局部变量的作用范围。

3 赋值 | assignment

Lua 支持多重赋值。

多重赋值时,按序将右边的表达式的值赋值给左值。右值不足补 nil,右值多余舍弃。

复制代码 代码如下:

b = 1
a,b = 4 -- a = 4,b = nil
+++

Lua 在进行赋值操作时,会一次性把右边的表达式都计算出来后进行赋值。

复制代码 代码如下:

i = 5
i,a[i] = i+1, 7 -- i = 6 ,a[5] = 7

特别地,有

x,y = y,x -- 交换 x,y 的值
+++

对全局变量以及表的域的赋值操作含义可以在元表中更改。

4 控制结构

4.1 条件语句

复制代码 代码如下:

if [exp]
    [block]
elseif [exp]
    [block]
else
    [block]
end

4.2 循环语句

复制代码 代码如下:

while [exp]
    [block]
end
+++

repeat
    [block]
until [exp]

以上就是浅谈Lua语句的详细内容,更多请关注0133技术站其它相关文章!

赞(0) 打赏
未经允许不得转载:0133技术站首页 » Lua