Declaración continue de Java

La instrucción continue de Java se utiliza para omitir la iteración actual de un bucle. La instrucción continue en Java se puede usar con for, while y do-while loop.

Instrucción continue de Java

Cuando se utiliza la instrucción continue en un bucle anidado, solo omite la ejecución actual del bucle interno. La instrucción continue de Java se puede usar con una etiqueta para omitir la iteración actual del bucle externo también. Veamos algunos ejemplos de la instrucción continue en Java.

Continue en bucle for de Java

Supongamos que tenemos un array de enteros y queremos procesar solo los números pares, aquí podemos usar un bucle continue para omitir el procesamiento de los números impares.

package com.journaldev.java;

public class JavaContinueForLoop {

	public static void main(String[] args) {
		int[] intArray = { 1, 2, 3, 4, 5, 6, 7 };

		// queremos procesar solo las entradas pares
		for (int i : intArray) {
			if (i % 2 != 0)
				continue;
			System.out.println("Processing entry " + i);
		}
	}

}

Continue en bucle while de Java

Supongamos que tenemos un array y queremos procesar solo los números de índice divididos por 3. Podemos usar la instrucción continue de Java aquí con un bucle while.

package com.journaldev.java;

public class JavaContinueWhileLoop {

	public static void main(String[] args) {
		int[] intArray = { 0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100 };
		int i = 0;
		while (i < 10) {

			if (i % 3 != 0) {
				i++;
				continue;
			}
			System.out.println("Processing Entry " + intArray[i]);
			i++;
		}
	}

}

Java continuar bucle do-while

Podemos reemplazar fácilmente el código del bucle while anterior con un bucle do-while como se muestra a continuación. El resultado y el efecto de la declaración continue serán los mismos que en la imagen anterior.

do {

	if (i % 3 != 0) {
		i++;
		continue;
	}
	System.out.println("Processing Entry " + intArray[i]);
	i++;
} while (i < 10);

Java continuar etiqueta

Echemos un vistazo al ejemplo de la etiqueta continue de Java para omitir el procesamiento del bucle exterior. Usaremos una matriz bidimensional en este ejemplo y procesaremos un elemento solo si todos los elementos son números positivos.

package com.journaldev.java;

import java.util.Arrays;

public class JavaContinueLabel {

	public static void main(String[] args) {

		int[][] intArr = { { 1, -2, 3 }, { 0, 3 }, { 1, 2, 5 }, { 9, 2, 5 } };

		process: for (int i = 0; i < intArr.length; i++) {
			boolean allPositive = true;
			for (int j = 0; j < intArr[i].length; j++) {
				if (intArr[i][j] < 0) {
					allPositive = false;
					continue process;
				}
			}
			if (allPositive) {
				// procesar la matriz
				System.out.println("Processing the array of all positive ints. " + Arrays.toString(intArr[i]));
			}
			allPositive = true;
		}

	}

}

Puntos importantes sobre continue en Java

Algunos puntos importantes sobre la declaración continue en Java son;

  1. Para casos simples, la declaración continue puede reemplazarse fácilmente con condiciones if-else, pero cuando tenemos múltiples condiciones if-else, usar la declaración continue hace que nuestro código sea más legible.
  2. La declaración continue resulta útil en caso de bucles anidados y para omitir un registro particular del procesamiento.

I have made a short video explaining java continue statement in detail, you should watch it below. https://www.youtube.com/watch?v=udqWkqhc2kw Reference: Oracle Documentation

Source:
https://www.digitalocean.com/community/tutorials/java-continue-statement