2016-12-03 60 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