Lua学习-语句

来源:互联网 发布:腾讯大数据平台优势 编辑:程序博客网 时间:2024/06/05 18:14

1.1-Chunks

Chunk是一系列的语句,你可以理解为Lua可以成功执行不出错的一系列语句。
lua执行的每一块语句,比如一个文件,一行代码,一个函数都可以理解为一个chunk。

1.2-Blocks

语句块(Block)
语句块是一列语句段;从语法上来说,一个语句块跟一个 chunk 相同.

1.3-赋值

Lua 允许多重赋值。
因此,赋值的语法定义是等号左边放一系列变量, 而等号右边放一系列的表达式。
两边的元素都用逗号间开。
如:

a,b,c = 1,2,3a,b,c = 1+2,2*2,3-1

右边个数 大于 左边 ,右边的会被丢弃
反之 ,左边多出的变量会被用nil填充

赋值段首先会做运算完所有的表达式,然后仅仅做赋值操作。

i = 3i, a[i] = i+1, 20--同i, a[3] = 4, 20

所以

x,y = y,x

可以互换x,y的值

1.4-控制结构

  • if
  • while
  • repeat
  • for
  • reutrn
  • break
if exp then    blockelseif exp then    blockelse    blockend
while exp do    blockend
repeat    blockuntil    exp

在 repeat–until 循环中, 内部语句块的结束点不是在 until 这个关键字处, 它还包括了其后的条件表达式。 因此,条件表达式中可以使用循环内部语句块中的定义的局部变量。

for i = a,b do    blockend

条件表达式中除了 nil 和 false认为假,其他均为真,包括 0 和 空字符串

return 可返回多个值

function func()    a=1    b=2    reutrn a,a+bend

break 用法与其他编程语言相同,不再赘述,用于跳出最内层循环

1.5-For语句

详细讲述for语句语法
1.数字形式

for var = e1,e2,e3 do    blockend

循环从 e1 到 e2 ,步长 为 e3
e1,e2,e3 若为表达式,其结果必须为数字!
e3 可 省略,默认为 1

2.一般形式

for var1,...varn in explist do    blockend
原创粉丝点击