Lua for循环

Lua for循环

 

累加模式

for var = exp1, exp2, exp3 do
       ……
end



exp1初始值

exp2最大值

exp3步长

 

例如

for i=1,5,2 do
       print(i*10)
end

结果:

 

 

迭代器泛型模式for

for  in  do
       ……
end

例如

a={1, 2, x=44, y=55}
for i,v in pairs(a) do
       print(i,v)
end

结果

 

详解:

for var1, var2,… in  do
       ……
end

等价于

do
       local _f1, _2, _n = 
       while true do
              local var1, var2, … = _f1(_2, _n)
              _n= var1
              if _n == nil then
                     break
              end
              ……
       end
end


自定义迭代器:

 

1

function CreateItor(i)
       local n = 0;
       return function()
              if n

结果

 

2

function Itor(i,n)
       if n

结果:

你可能感兴趣的:(编程语言杂记,lua,for)