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技术站其它相关文章!