welcome: please sign in
location: "break文"の差分
6と13のリビジョン間の差分 (その間の編集: 7回)
2008-12-09 13:39:42時点のリビジョン6
サイズ: 1042
編集者: masahiko
コメント:
2010-12-06 01:07:04時点のリビジョン13
サイズ: 1351
編集者: masahiko
コメント:
削除された箇所はこのように表示されます。 追加された箇所はこのように表示されます。
行 9: 行 9:
4行目の条件が成り立つときは行目のbreak文が実行され、その時点でforループを抜けます。 4行目の条件が成り立つときは行目のbreak文が実行され、その時点でforループを抜けます。
行 17: 行 17:
   ...
行 33: 行 32:
    ...
行 52: 行 50:

 {{attachment:break3.png}}

ラベルのあるbreak文を用いると2重ループ内で、内側のループだけを抜けることができます。

 {{{#!java
 for(j = 0; j < n; j++)
 {
 loop2:
  {
   for(i = 0; i < 10; i++)
   {
    ...
    if( ... )
    {
     break loop2;
    }
   }
  }
 }
 }}}

break文

break文は繰り返しを途中で抜けるのに使います。


10回繰り返すforループの内側で、 4行目の条件が成り立つときは6行目のbreak文が実行され、その時点でforループを抜けます。

  •    1  for(i = 0; i < 10; i++)
       2  {
       3         ...
       4         if( ... )
       5         {
       6                 break;
       7         }
       8  }
    

では2重ループの内側でbreak文を使うとどうなるでしょうか。

  •    1  for(j = 0; j < n; j++)
       2  {
       3         for(i = 0; i < 10; i++)
       4         {
       5                 ...
       6                 if( ... )
       7                 {
       8                         break;
       9                 }
      10         }
      11  }
    


ラベルのあるbreak文

ラベルのあるbreak文はラベルのあるブロックの中で使います。

ラベルのあるブロックの構文を示します。

  • break1.png

ラベルのあるbreak文の構文を示します。

  • break2.png

ラベルのあるbreak文が実行されると、そのラベルのつけられたブロックを抜けます。

  • break3.png

ラベルのあるbreak文を用いると2重ループ内で、内側のループだけを抜けることができます。

  •    1  for(j = 0; j < n; j++)
       2  {
       3  loop2:
       4         {
       5                 for(i = 0; i < 10; i++)
       6                 {
       7                         ...
       8                         if( ... )
       9                         {
      10                                 break loop2;
      11                         }
      12                 }
      13         }
      14  }
    

break文 (最終更新日時 2010-12-06 01:07:04 更新者 masahiko)