lua 中如何 continue

要说 lua 语言中最让大家有些不适应的,应该有两个:

  1. 数组下表是从 1 开始的
  2. 循环中没有 continue 关键字

第一条,估计只能大家默默接受,没有翻身余地。

循环中没有 continue ,现在终于可以翻身变相实现又不失效率,毕竟每次为了 continue 让我们手工写很多 if、else 还是很恼火的。

LuaJIT 开始跟进了 Lua 5.2 语言和库的一些特性。详细信息大家可以到这里参考: http://luajit.org/extensions.html#lua52

其中第一个就大大的写明,开始支持 goto 和 ::labels:: 机制。我们赶紧来写我们的第一个 continue 例子:

for i=1, 3 do
    if i <= 2 then
        print(i, "yes continue")
        goto continue
    end

    print(i, " no continue")

    ::continue::
    print([[i'm end]])
end

输出结果:

$ luajit test.lua
1   yes continue
i'm end
2   yes continue
i'm end
3    no continue
i'm end

PS :推荐大家多关注:http://luajit.org/extensions.html#lua52 ,说不定你就发现了新大陆。

results matching ""

    No results matching ""