Java - continue 文

continue 文

continue 文は for 文while 文do..while 文などのブロック内で使用され、continue 文が実行されると、実行された位置からブロックの最後まで残りの処理をスキップします。具体的な continue 文の使い方は、以下のとおりです。

for (int i = 0; i < 10; i++){
  if (i == 5){
    continue;
  }

  System.out.println(i);
}
continue 文

continue 文が実行されると、ブロック内でそれ以降に記述された処理をすべて行わずに次の繰り返しの条件判断に進みます。

for 文の場合は変化式が用意されているため問題にはなりませんが、while 文などの場合は注意が必要です。例えば、以下のサンプルコードでは i が 5 になると、変化式に到達できなくなるため、無限ループが発生します。

int i = 0;

while(i < 10){
  if (i == 5){
    continue;
  }

  i++;
  System.out.println(i);
}
continue 文

また break 文と同じく、繰り返し処理がネストしている場合は、continue 文を含む一番内側の繰り返し処理をスキップして次の繰り返しへ移ります。任意の繰り返し処理をスキップさせるためには、ラベル付き continue 文を使用します。

label1: for (int i = 1; i < 10; i++){
  for (int j = 1; j < 10; j++){
    if (i * j > 10){
      continue label1;
    }
  }
}
ラベル付き continue 文

ラベル付き continue 文が実行されると、指定されたラベルが付けられたブロックの最後までの処理がスキップされ、次の繰り返しに移ります。

関連記事