Lua for循环误区

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/iamlegendary/article/details/83862652
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吧,用个变量自己做条件判断!

猜你喜欢

转载自blog.csdn.net/iamlegendary/article/details/83862652
LUA
今日推荐