Luaプログラミング入門 > 第4章 制御文 > breakを使ったループの脱出


[Prev] [Next] [Up] [Contents][フレーム表示] [フレーム解除

breakを使ったループの脱出 応援する 

繰り返し処理を実行している間にbreak文を使うと, いつでもループから脱出することができます. 例えば次のようなプログラムを書いたとします.

for i = 0, 10 do
        print( "iの値:" .. i )
        if ( i == 5 ) then
                break
        end
end
print("脱出")
実行結果
iの値:0
iの値:1
iの値:2
iの値:3
iの値:4
iの値:5
脱出

breakは必ずブロックの最後でしか使うことができません. ブロックの最後とは,具体的に以下のような場所です.

  • endの手前
  • repeat - until の untilの手前 等

上記の場所以外ではbreakは定義できません. しかしデバッグ中に,例えば処理の途中でbreakしたい場合があるかもしれません. 次のようなコードがあったとします.

for i = 0, 10 do
        print("なにか処理")
        --本当はここでbreakしたい
        print("別の処理")
end
print("脱出")

まあ,このようなコードを書くことは普段ないとは思いますが.

とにかく,途中でbreakしたい場合は,ブロックをforの途中に作ればよいのです. ブロックを作るには,do - endを使用します.

書式
do
    処理
end

よって,次のように書き直せば,処理の途中でbreakが行えます.

for i = 0, 10 do
        print("なにか処理")
        do
                break;
        end
        print("別の処理")
end
print("脱出")
実行結果
なにか処理
脱出

[Prev] [Next] [Up] [Contents][フレーム表示] [フレーム解除

このサイトについて|ヘルプ|Q&A|個人情報保護|プライバシーポリシー|利用規約|コメント・トラックバック規約|削除規程|広告掲載
Copyright (c) 2005-2007 Time Intermedia Corporation