2016-12-03 84 views
-2

我在卢阿有一个循环,当某件事情发生时,我希望它启动循环。但是,当我返回它只是结束循环。lua中的等价回报?

wrong = false 
while true do 
    if wrong then 
     return 
    end 

    print 'Not wrong' 
end 
+3

您是否正在寻找一个“继续”关键字?如果是这样,你可能想读这个:http://stackoverflow.com/questions/3524970/why-does-lua-have-no-continue-statement –

+1

'return'正在做它应该做的。在大多数语言中,'return'终止当前函数调用,而不仅仅是当前循环。我建议你重写这个问题来描述你想要做的事情,而不是你错误地认为“回报”应该做的事情。 –

回答

0

返回终止函数并返回一个值。我相信你想break跳出一个循环

+2

“break”不会启动循环,这是OP询问的内容。 –

2

首先return不会终止你的循环,它会终止整个函数/脚本。请注意!终止循环使用break。您正在寻找相当于其他语言的“继续”。

Lua没有这样的事情。你可以摆弄的东西一起使用goto陈述其在新的Lua版本也有,但一般而言,您可以简单地重写代码:

while true do 
    if not wrong then 
    print("not wrong") 
    end 
end