for を使ったループ


ループを途中で抜け出すには、breakを使います。breakが実行されると、ループの外に制御が移ります。
下のsample codeは、文字数が3文字以上の配列要素を見つけると、その時点で検索を終了する例です。

continueを使うと、ループの中に書かれているcontinue以降の処理をスキップしてループの最初に戻ります。
その時にカウンターはカウントアップされます。下のsample codeでは配列の要素がnullであれば、以降の処理をスキップしているため、
NullPointerExceptionを発生させる事無く検索しています。

class  ExamFor  {
    public  static  void  main(String  args[])  {
        String  s[]      =  new  String[10];
        String  s2[]   =  {"ab" , "cd", "efg", "h", "ijk"};
          //  s2  ->  s    set
        int  ix1 , ix2;
        for  (   ix1 = 0 , ix2  = 0 ;   ix2 < s2.length ;   ix1  = ix1 + 2 , ix2++)  {
                  s[ix1]  = s2[ix2];
        }
        for  ( int  ix = 0 ; ix < s.length  ; ix++ )  {
              if  (s[ix]  == null)  {
                   continue;                                        //skip  follow  line
               }
               if  (s[ix].length()   >  2)  {
                    System.out.println(s[ix]);
                    break;
               }
          }
    }
}

<実行結果>
コンソール画面に

efg

と表示されます。
ijkは表示されません。


上のコードは、配列sをサーチするループです。
配列sは最初10個の大きさで作成されているので、10個全ての要素がnullで初期化されています。
配列s2は5個の要素を持っており、1つ目のループでs2からsへ1つおきに参照を代入しています。

      配列sの内容 :   [ab], null , [cd], null ,[efg], null ,[h], null ,[ijk], null


1つ目のforでは変数をカンマで並べて、2つ使用しています。構文の意味は前ページへ

labelを記述してそのstatementから抜け出すsampleはこちら。