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 と書くと、そこでループを脱出する。