Lua for循环误区
程序员文章站
2022-03-14 11:00:25
...
function f()
local i;
for i = 1, 10,1 do
print("Before Add i = " .. i);
i = i + i;
print("after Add i = " .. i);
end
end
f();
如上代码, i打印的结果为1,2,2,3,3,4,4,5,5,6,6,7,7,8,8…
也就是说 i = i + 1 不起作用,在for循环执行一次之后i 的值会重置为当前循环的索引。
另一种说法,Lua里面的for不是条件判断,无论对i 怎么操作,这里的循环总会执行10次
PS: 如果想做i的自增操作,那么就…改用While吧,用个变量自己做条件判断!
上一篇: Java虚拟机学习 - 类加载机制