[color=blue]1、赋值语句[/color]
[color=blue]2、局部变量和块(block)[/color]
局部变量:用 local 定义,作用域仅限于声明它的那个块
块:可以是一个控制结构体,一个函数体,一个程序块chunk(文件或文本串)
[color=red]尽可能使用局部变量:
1:避免命名冲突
2:访问局部变量的速度比全局变量快[/color]
[color=blue]3、控制结构[/color]
1、if语句
2、while语句
3、repeat语句
4、数值for
[color=red]注意:
1 控制变量var被自动声明为for的局部变量
2 不要在循环过程中修改控制变量值,会导致结果不可控[/color]
5、泛型for
[color=blue]4、break和return[/color]
break用于结束一个循环
return用于函数结果返回
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用于函数结果返回