lua 中如何 continue
要说 lua 语言中最让大家有些不适应的,应该有两个:
- 数组下表是从 1 开始的
- 循环中没有 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 ,说不定你就发现了新大陆。