欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

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吧,用个变量自己做条件判断!

相关标签: Lua