en Java mientras y hacer mientras tutorial de programación de bucles, aprendimos sobre dos de las construcciones de bucles más básicas y antiguas. En el seguimiento de hoy, concluiremos nuestro examen de los tipos de bucle admitidos en Java a medida que exploramos el fo y fo cada uno bucles
Puedes aprender más sobre mientras y hacer mientras bucles en nuestra guía: Bucles de Java whereas y do whereas.
Java para bucle
El f de Javao bucle es a menudo una mejor opción que un mientras o hacer mientras bucle cuando sabe exactamente cuántas veces desea recorrer un bloque de código.
El en bucle La sintaxis se considera algo más compleja que la de otros tipos de bucles en Java debido al uso de tres expresiones. Aquí hay un ejemplo de la para sintaxis del bucle:
for (initialExpression; testExpression; updateExpression) { // physique of the loop }
En este ejemplo de código:
- El expresión inicial inicializa y/o declara variables y se ejecuta solo una vez.
- El expresión de prueba se evalúa la condición. Si la condición es verdaderoel cuerpo del para se ejecuta el bucle.
- El actualizarExpresión actualiza el valor de expresión inicial.
- El expresión de prueba se vuelve a evaluar la condición. El proceso continúa hasta que la condición es FALSO.
Aquí hay un breve ejemplo de programa Java que imprime una cadena cinco veces:
class ForLoopExample { public static void important(String() args) { last int n = 5; // for loop for (int i = 1; i <= n; i++) { System.out.println("Hey world!"); } } }
Cuando se ejecuta, el programa produce la siguiente salida:
Los bucles for también se pueden usar para realizar cálculos, como calcular la suma de números naturales a partir de 1 a 1000como se muestra en el siguiente ejemplo de código:
class ForLoopExample2 { public static void important(String() args) { int sum = 0; last int n = 1000; for (int i = 1; i &= n; ++i) { sum += i; } System.out.println("Sum = " + sum); } }
Aquí está la salida del programa anterior:
Leer: Los mejores cursos y paquetes de capacitación en línea de Java
Cuidado con los bucles infinitos
Para los bucles no son inmunes a bucle infinitoya que es posible establecer la expresión de prueba de tal manera que nunca evalúa a FALSOresultando en la para bucle corriendo para siempre. Aquí hay un ejemplo de código Java que demuestra un infinito para bucle:
class InfiniteForLoopExample { public static void important(String() args) { int sum = 0; for (int i = 1; i <= 10; i--) { System.out.println("Hey world!"); } } }
Aquí están los resultados (parciales), que ya han superado el objetivo de 10 líneas:
Leer: Herramientas Java para aumentar la productividad
El bucle for-each de Java
Añadido en Java 1.5, el para cada loop es una alternativa al para bucle que es más adecuado para iterar sobre arreglos y colecciones. el Java para cada la sintaxis también es mucho más easy; todo lo que requiere es una variable de mantenimiento temporal y la iterable objeto:
for (sort variableName : iterableObject) { // code block to be executed }
En el siguiente ejemplo de código, un para cada loop se utiliza para generar todos los elementos en una matriz de vehículos:
String() automobiles = {"Volvo", "BMW", "Ford", "Infiniti", "Jaguar"}; for (String i : automobiles) { System.out.println(i); }
Como puede ver en el resultado a continuación, se accede a cada elemento de la matriz en orden del primero al último:
Los desarrolladores también pueden usar el para cada bucle para atravesar objetos que almacenan una colección, como un Mapaaunque desde Java 8 el para cada() se considera que el método es una mejor opción:
import java.util.*; class ForEachMapExample { public static void important(String() args) { Map<Integer, String> map = new HashMap<>(); map.put(1, "Java"); map.put(2, "is"); map.put(3, "enjoyable!"); for (String phrase : map.values()) { System.out.println("Phrase: " + phrase); } } }
Para poder leer los valores del mapa, primero debemos extraerlos del mapa. Para ello, podemos emplear el valores() método; devuelve una Colección de los valores contenidos en el mapa.
Java continúa y se rompe en For y For-each Loops
Ambos para y para cada los bucles soportan el continuar y romper declaraciones en Java. Por lo tanto, si desea omitir la iteración precise, use continuar:
for(int i = 0; i < 5; i++){ if (i == 2){ proceed; } }
Necesitar romper fuera de todo el bucle? Usar romper:
for(int i = 0; i < 5; i++){ if (i == 2){ break; } }
Para salir de más de un uso de bucle romper con una etiqueta:
outerLoop: // Label the loop for(int j = 0; j < 5; j++){ for(int i = 0; i < 5; i++){ if (i==2){ break outerLoop; } } }
Una palabra para los sabios: si se encuentra buscando muchos valores específicos, podría ser mejor filtrar previamente su colección o usar un ciclo separado para cada grupo de valores.
Reflexiones finales sobre Java For y For-each Loops
En este tutorial de programación Java, exploramos los muy importantes para y para cada Tipos de bucles de Java. El para loop es la opción perfecta cuando sabe exactamente cuántas veces desea recorrer un bloque de código, mientras que el para cada loop es best para iterar sobre los elementos de una matriz easy. Objetos que almacenan colecciones como el Lista de arreglo y mapa hash proporcionar la para cada() método de instancia para fines de bucle. También discutimos el uso de romper y continuar en para y para cada bucles