Lua的循环和C语言的循环的语法其实差不多,所以,理解起来就很好理解的啦,所以实现也很简单,跟C没什么两样,都差不多。
案例如下:
test1.lua
-- 1、while循环
--[[
理解为C语言的就行了,其实差不多的
语法格式:
while(true)
do
执行语句
end
]]
--定义一个全局变量a=0
a=0
--
while(true)
do
a=a+1
print("a:",a)
if(a == 5)
then
break
end
end
-- 2、for循环
--[[
理解为C语言的for就行了,其实差不多的
语法格式:
for var=exp1,exp2,exp3 do
你要执行的语句
end
]]
--数值for循环
--怎么理解? i = 0 , i <=5 ; i+=1
--如果第三个参数1是负数,意味着做减一的操作
--参数2作为条件,当然也可以传函数,用函数作为返回值为条件实现循环
for i = 0 , 5 , 1 do
print("i:",i)
end
--泛型for循环
--类似java的迭代
--[[
格式:
for i,v in ipairs(a)
do
print(v)
end
]]
--怎么理解?i是数组索引值,v是对应索引的数组元素值,ipairs是lua的一个迭代的函数,用来实现数组的迭代
num = {1,2,3,4,5}
for i,v in ipairs(num) do
print("num:",num[i])
end
--3、 repeat...util循环
--[[
理解为shell脚本的until就行了,其实差不多的,只要条件不成立就执行,条件成立就结束
语法格式:
repeat
你要执行的语句
until( 判断条件 )
]]
num1 = 1
repeat
print("num1:",num1)
num1 = num1 + 1
until(num1 > 5)
解释运行: lua test2.lua
运行结果:
a: 1
a: 2
a: 3
a: 4
a: 5
i: 0
i: 1
i: 2
i: 3
i: 4
i: 5
num: 1
num: 2
num: 3
num: 4
num: 5
num1: 1
num1: 2
num1: 3
num1: 4
num1: 5
|