Lua中変相実現continue飛び出しサイクル

409 ワード

Luaにはcontinueというキーワードがなく、時には不便で、ループのif-thenのネストが深い可能性があります.
しかし、私たちは小さなテクニックで同等の機能を実現することができます.
for i = 1, 100 do
    while true do
        if i % 2 == 1 then break end
  --         
        --
        --
        break
    end
end

この例では,i%2==1の場合,continueの効果を実現する.
この書き方の利点は,ループ体が複雑な場合に,いつループの尾に直接ジャンプするかをはっきり見ることができることである.
注意:2つのbreakは漏れないでください.特に後ろのあれは、漏れたら死んでしまいます.