SJC-P対策 フロー制御(2)
break,continue文
break,cotinue文は、ループ制御中に使う事の出来るキーワードだ。普通ループ処理を中断したい場合は、次の3つの方法が考えられる。
break文、return文、System.exit()...break文は、現在実行中のループ処理を抜けたり、switch文をフォールスルー
しないために利用できると考えられます。
continue文は、反復式の中で行う処理をスキップします。
この辺の事はCと殆ど同じですね。ただjavaにはgoto文が無い代わりに、ラベルつきbreak,continueが
存在します。
次のようなものです。
//ラベル付き continue文 for(int a = 0; a < 2; ++a) { System.out.println("a" + a); loop1: for(int b = 0; b < 2; ++b) { System.out.println("b" + b); for(int c = 0; c < 2; ++c) { System.out.println("c" + c); break loop1; } } } |
以外にも、結果は次のようになります。
a0 b0 c0 b1 c1 a1 b0 c0 b1 c1 |
//ラベル付き break文 loop0: for(int a = 0; a < 2; ++a) { System.out.println("a" + a); loop1: for(int b = 0; b < 2; ++b) { System.out.println("b" + b); for(int c = 0; c < 2; ++c) { System.out.println("c" + c); break loop0; } } } |
結果は次のようになります。
a0 b0 c0 |
この場合は、一番初めのループ文から抜けると言う意味です。
このラベルつきbreak,continueは反復式の中でのみ有効です。