例:从1一直输出到20
方法一:while循环
while(条件) do
内容
end
num=1
while(num<20) do
num=num+1--lua中没有自加自减一说,这里不能协成num++
print(num)
end
方法二:for循环
1,数值for循环
for var=start,end,step do
起始值,结束值,步长,这里是<=,包含最大值
内容
end
如果step不指定,默认为1
for var=1,20,1 do
print(var)
end
2,泛型for循环
这个针对的是表中数据的循环,比如相对表中数据做循环处理。
for k,v in pairs (tab) do
end
tab={"apple","banana","orange",key1=100}
for k,v in pairs(tab) do
print(k,v)
end
这个如果用ipairs的话,只会输出前三个数,因为ipairs是从下标为1开始的。默认如果没有设置key,那它的key为1.
这里附上别人写的pairs和ipairs的区别
https://www.runoob.com/note/11315
方法三:repeat until
相当于C#中的do while,先执行一次,再去判断条件
repeat
循环体
until
结束条件
repeat
num=num+1
print(num)
until
num>20
写几个循环的嵌套。道理都一样,例子:是几,就输出几个几。例1,2,2,3,3,3,4,4,4,4
for i=1,10,1 do
for k=1,i,1 do
print(i)
end
end
----------------------------------------
for i=1,10,1 do
k=1
while(k<=i) do
print(i)
k=k+1
end
end