Lua中的for语句有2种形式:数字型、泛型。
Lua for 数字型
数字型for语句语法如下:
for var = begin,finish,step do
end
说明:var从begin变为finish,每次变化的步长为step。其中,begin、finish、step只会在循环开始时执行1次,步长step参数是可选的(默认值为1)。var变量的作用域只在循环体内。
for i=1,3 do print(i) end -- 依次输出:1 2 3
Lua for 泛型
Lua中的for泛型循环是通过一个迭代器函数来遍历所有值的。
Lua基础库提供了 ipairs ,它是一个用于遍历数组的迭代器函数。
-- 打印数组的所有元素 local arr={'PHP','Java','Linux'} for i,v in ipairs(arr) do print('index:',i," value:",v) end
以上代码中,在每次循环时,i会被赋予一个索引值,同时v被赋予该索引对应的元素值。
如果仅仅打印数组的key,则代码可以简写为:
-- 打印数组的所有的索引 local arr={'PHP','Java','Linux'} for i in ipairs(arr) do print('index:',i) end