学习传送门:https://www.runoob.com/lua/lua-variables.html
1.变量
(1)lua中变量分为:全局变量、局部变量和表中的域,即使在方法里声明变量的时候没有加上关键字local的变量都是全局变量。局部变量的生命周期---声明到语句块结束。变量的默认值都是nil。
(2)变量赋值
可以对多个变量同时赋值,变量列表和值列表用逗号隔开,一一对应:例如:x,y=1,2 ----->x=1,y=2,也可以直接用赋值做交换:x,y=y,x ------->swap x for y
注:如果是a,b,c=0得到的结果是a=0,b=nil,c=nil
2.循环
(1)while
while(condition) do 一定要注意写关键词do和end代表执行和方法结束,方法体没有{}
方法体
end
(2)repeat..until-->(感觉就是do...while)
repeat 这是我接触的第一个不用do和end关键词的循环
方法体
until(condition)
(3)for循环----(for 和foreach的关键字都是它)
for----- for i=value1,value2,value3 do
方法体 i从value1变到value2,每次循环增量为value3,value3没赋值默认为1
end
foreach---- for k,v in ipairs(xx) do
方法体
end
(4)嵌套循环---注意每个关键字要对应end就行了
(5)break and goto
break:终止当前循环 goto:将控制流程无条件地转到被标记的语句处,感觉这个可以实现continue
3.if...else
if(condition) then if执行的关键词是then
方法体
end
如果是if嵌套的话: if(condition) then 每个if都要对应有自己的end
方法体
if(condition1) then
方法体
end
else
方法体
end
4.方法(函数)
lua中的方法可以同时返回多个值,并且方法的参数可以是一个可变参数用“...”三点代替,有点像objec[]args。
可变参数:遍历使用{...},获取长度select('#',...),获取n到select('#',...)的参数 select(n,...)。
南投北浪 2020/04/27