break文 2015/04/05
for文やwhile文などのループを途中で脱出する構文の、プログラミング言語別メモ。
switch
構文で fall through を防ぐために break
を使う言語もある。
Perlではlast
と書く。
C言語, C++ 2013/11/15
for
文、while
文、do while
文の中で break
と書くと、そこでループを途中で脱出する。switch
文でも使う。
Go言語 (golang) 2015/09/26
for
文、switch
文、select
文の中で break
と書くと、そこでループを途中で脱出する。
Break statements | The Go Programming Language Specification
http://golang-jp.org/ref/spec#Break_statements
Java 2013/11/15
for
文、while
文、do while
文の中で break
と書くと、そこでループを途中で脱出する。
break
はデフォルトではもっとも内側のループを脱出するだけなので、多重ループの外側のループを脱出したい場合にはラベル付きのbreak
を使う。
for
文、while
文などにはラベルを付けることができ、
break
でどのループを脱出するのかをラベルで指定する。
例
foo: for(int i = 0; i < 10; i++){
bar: for(int j = 0; j < 10; j++){
System.out.println(String.format("i=%d, j=%d", i, j));
if(i + j == 14){
break foo;
// i=5, j=9 を出力したところで終了する
}
}
}
ループ以外でも通常のブロックの中でもbreak
を使用することができる。ただしこの場合はラベルが必須。ラベルがないとコンパイルエラーになる。
例
int k = 0;
hoge: {
System.out.println("STEP 1");
if(k == 0){
break hoge;
// hogeブロックを途中で終了するので、
// STEP 1だけを出力する
}
// ここは実行されない
System.out.println("STEP 2");
}
break
はswitch
文でも使う。
Scala 2014/10/03
break
は関数型言語っぽくないので、たぶんScalaにはこの構文はない。
ここに無理やりbreak
するサンプルがあるけど。
PHP 2014/04/27
for
文、foreach
文、while
文、do-while
文、switch
文の中で、break;
と書くと、そこでループを脱出する。引数の指定により複数回層のループ構造を脱出することもできる。
break
文 | PHP Manual
http://php.net/manual/ja/control-structures.break.php
Python 2014/02/03
while
文 や for
文の中で break
と書くと、そこでループを脱出する。
break
の結果、try
文をも脱出する場合、finally
節があれば、脱出直前にfinally
節を実行する。
Ruby 2013/12/08
繰り返し処理の中で break
と書くと、そこでループを脱出する。
ブロック付きメソッド呼び出しでも、ブロックの中で使用でき、メソッドが繰り返し処理をするものであれば、ループから抜け出す。繰り返し処理でないブロック付きメソッド呼び出しでも同様に、ブロックから脱出してさらにそのブロック付きメソッド呼び出しからも脱出する。
break
に値を指定すると繰り返し分の返り値を指定することになる。以下の例は目的がよくわからないが。
print (while true
break 1
end)
# => 1
Perl 2016/02/11
while
文の中で last
と書くと、そこでループを脱出する。
last
のあとにラベルを書くと、そのラベルのループを脱出することができ、多段ループの脱出もできる。
OUTER_LOOP: while () {
while () {
...;
last OUTER_LOOP if ...;
...;
}
}
sh (シェルスクリプト) 2013/09/10
while
文やfor
文の中で break
と書くと、そこでループを脱出する。
R言語 2013/11/20
break
と書くと、そこでループを脱出する。