Оператор continue
Оператор continue может использоваться только в циклах while, do, for. Если в потоке вычислений встречается оператор continue, то выполнение текущей последовательности операторов (выражений) должно быть прекращено и управление будет передано на начало блока, содержащего этот оператор.
... int x = (int)(Math.random()*10); int arr[10] = {....} for(int cnt=0;cnt<10;cnt++) { if(arr[cnt] == x) continue; ... }
В данном случае, если в массиве arr встретится значение, равное x, то выполнится оператор continue и все операторы до конца блока будут пропущены, а управление будет передано на начало цикла.
Если оператор continue будет применен вне контекста оператора цикла, то будет выдана ошибка времени компиляции. В случае использования вложенных циклов оператору continue, в качестве адреса перехода, может быть указана метка, относящаяся к одному из этих операторов.
Рассмотрим пример:
public class Test { public Test() { } public static void main(String[] args) { Test t = new Test(); for(int i=0; i < 10; i++){ if(i % 2 == 0) continue; System.out.print(" i=" + i); } } }
В результате работы на консоль будет выведено:
i=1 i=3 i=5 i=7 i=9
При выполнении условия в строке 7 нормальная последовательность выполнения операторов будет прервана и управление будет передано на начало цикла. Таким образом, на консоль будут выводиться только нечетные значения.