Chunk是一系列语句,Lua执行的每一块语句,比如一个文件或者交互模式下的每一行都是一个Chunk。
显式的语句块对于控制变量的作用范围十分有用。有时候,显式的语句块被用来在另一个语句块中插入return或是break。
Lua允许多重赋值。赋值的语法定义是等号左边放一系列变量,等号右边放一系列表达式。
如:local a,b,c,d,e=1,2,3,4,5注:Lua会先计算右边所有的值后才赋值,所以交换可以写成x,y=y,x 注:对多个变量的赋值是依次对每个变量赋值
主要是指if、while、及repeat的语法使用 if使用
1)if 语句 由一个布尔表达式作为条件判断,其后紧跟其他语句组成。
if conditions then then-part end2)if 语句 可以与 else 语句搭配使用, 在 if 条件表达式为 false 时执行 else 语句代码。
if conditions then then-part else else-part end3)在if 或 else if中使用一个或多个 if 或 else if 语句 。
if conditions then then-part elseif conditions then elseif-part .. else else-part endwhile使用
while condition do statements end例: 运行结果为8 repeat使用
repeat statements; until conditions;例: 运行结果为8
数值for循环
for var=exp1,exp2,exp3 do loop-part end注:var自动会被声明,并且只在循环内有效果,循环过程中不要改过它的值; exp3可省略,默认是1;三个表达式只会在循环前触发一次,可以是函数返回值c; 循环过程中不要改变控制变量的值,哪样做的结果是不可预知的。如果要退出循环,使用break语句。 范型for循环
for i,v in ipairs(a) do print(v) end注:范型for遍历迭代子函数返回的每一个值;控制变量是局部变量;不要修改控制变量的值
break语句用来退出当前循环(for、repeat、while),在循环外部不可以使用。 return语句用来返回某个值,均只能是放在某个语句块最后一句,end、else、until之前;若中途想用可用do…end来实现。如:do return end; 例: 运行结果为:2 2