Lua学习(三)语句

[color=blue]1、赋值语句[/color]

a = 1
a,b = 10, 2*x (多重赋值)
x,y,z=1,2 (x=1,y=2,z=nil)
x,y = y,x (交换x,y值)

[color=blue]2、局部变量和块(block)[/color]
局部变量:用 local 定义,作用域仅限于声明它的那个块

块:可以是一个控制结构体,一个函数体,一个程序块chunk(文件或文本串)

x = 10 --全局变量
local i = 1 --局部变量

while i <= x do
local x = i*20 --while循环体中的局部变量x
print(x) --2,4,6,8...
i = i + 1
end

if i > 20 then
local x --then中的局部变量
x = 20
print(x+2) --22
else
print(x) --全局变量10
end

print(x) --全局变量10

[color=red]尽可能使用局部变量:
1:避免命名冲突
2:访问局部变量的速度比全局变量快[/color]

[color=blue]3、控制结构[/color]
1、if语句

if conditions then
then-part
end

if conditions then
then-part
else
else-part
end

if conditions then
then-part
elseif condition then
elseif-part
..
else
else-part
end

2、while语句

while conditions do
do-part
end

3、repeat语句

repeat
repeat-part
util conditions

4、数值for

for var=exp1,exp2,exp3 do
statements
end

[color=red]注意:
1 控制变量var被自动声明为for的局部变量
2 不要在循环过程中修改控制变量值,会导致结果不可控[/color]

5、泛型for

for i,v in pairs(t) do
statements
end
i是table t的索引,v是table t中,索引为i的元素值。pairs-遍历数组的迭代器

[color=blue]4、break和return[/color]
break用于结束一个循环
return用于函数结果返回

你可能感兴趣的:(lua)