プログラミング初歩見習いのJavaメモ / ラベル付きループ

  • 4
    いいね
  • 0
    コメント
この記事は最終更新日から1年以上が経過しています。

ラベル付きループなるものを学習したのでそのメモをば。
breakやcontinue等と一緒に使うことで、直近以外のforにもbreakやcontinueを対象にすることができます。
例として、このようなコードがあるとします。

loop1:
for(int i = 0; i < 3; i++) {
    for(int j = 0; j < 5; j++) {
        if (j==3) {
            break loop1;
        }
        System.out.println("i=" + i + ", j=" + j);
    }
}

上記の loop1: というラベルをつけることで、break loop1;
という処理がおこなれた際、breakの対象がラベルが貼られているループ処理箇所になるので、この場合だと一番外側のloopがbreakします。
その結果、このようなかんじになります!

i=0, j=0
i=0, j=1
i=0, j=2

break後の飛び幅が広いので可読性が下がることと、そもそも使っている人が少ないということで実際の現場等ではあまり使われないそうですが、Oracle認定試験等にも出てくることがあるそうで、知っておいて損はない、はず!