Supongamos que se requiere imprimir números del 1 al 5. Una forma posible de hacerlo es con la ayuda del siguiente código:
class GFG { public static void main(String args[]) { int a; a = 1; System.out.println(a); a=2; System.out.println(a); a=3; System.out.println(a); a=4; System.out.println(a); a=5; System.out.println(a); } }
El código anterior puede parecer simple, pero tiene muchas desventajas, como:
- Código fijo: el código está hecho para imprimir solo los números del 1 al 5. ¿Qué sucede si se requieren otros números o algún otro patrón? En ese caso, esta solución sugeriría escribir otro programa con los nuevos valores requeridos o cambiar cada valor individual en el programa existente. Y esto continuará cada vez que resulte en una estructura larga y fija escrita varias veces.
- Código Repetitivo: Como se mencionó en el último punto, esta solución sugiere volver a escribir todo el programa con el valor modificado o modificar los valores en el programa existente cada vez. Pero, ¿qué pasa si se requieren cientos de tales patrones? Esto daría como resultado una gran cantidad de código repetitivo e innecesario.
- No generalizado: la solución sugerida no está generalizada. Significa que los números que se van a imprimir son introducidos en el código por el usuario de forma estática. No hay un patrón predefinido que siga el código e imprima el código de acuerdo con el patrón.
- No escalable: todo código escrito en informática debe escribirse de manera escalable. Significa que el código debe funcionar bien con un número mínimo de cambios para imprimir los números del 1 al 100.
Aquí viene el «bucle» de ayuda, cada vez que se requiere la repetición de un proceso.
¿Qué son los bucles?
El bucle en los lenguajes de programación es una característica que facilita la ejecución de un conjunto de instrucciones/funciones repetidamente mientras alguna condición se evalúa como verdadera.
Java proporciona tres formas de ejecutar los bucles. Si bien todas las formas brindan una funcionalidad básica similar, difieren en su sintaxis y tiempo de verificación de condición.
- while loop: un ciclo while es una declaración de flujo de control que permite que el código se ejecute repetidamente en función de una condición booleana determinada. El ciclo while se puede considerar como una declaración if repetida.
Sintaxis:while (boolean condition) { loop statements... }
- for loop: for loop proporciona una forma concisa de escribir la estructura del bucle. A diferencia de un bucle while, una instrucción for consume la inicialización, la condición y el incremento/decremento en una línea, lo que proporciona una estructura de bucle más corta y fácil de depurar.
Sintaxis:for (initialization condition; testing condition; increment/decrement) { statement(s) }
Diagrama de flujo:
Bucle For mejorado
Java también incluye otra versión de bucle for introducida en Java 5. El bucle for mejorado proporciona una forma más sencilla de iterar a través de los elementos de una colección o array. Es inflexible y debe usarse solo cuando sea necesario iterar a través de los elementos de manera secuencial sin conocer el índice del elemento actualmente procesado.
Sintaxis:for (T element:Collection obj/array) { statement(s) }
- do while: do while loop es similar a while loop con la única diferencia de que verifica la condición después de ejecutar las instrucciones y, por lo tanto, es un ejemplo de Exit Control Loop.
Sintaxis:do { statements.. } while (condition);
¿Cómo escribir un bucle?
Al observar cuidadosamente el código anterior, se puede dividir en los siguientes procesos o pasos:
1) Inicializar un valor a una variable
2) Imprimir el valor
3) Cambiar el valor
4) Imprimir el valor
Estos procesos se repiten una y otra vez. Esto se puede reemplazar con un bucle de la siguiente manera:
- En el código que se muestra arriba, la inicialización es a=1, lo mismo se puede hacer en el bucle for.
- La segunda expresión es condición. La condición debe especificar cuántas veces se debe ejecutar el bucle. Depende del número de veces que se deba repetir el proceso. En este caso, debería ejecutarse 5 veces. El valor de «a» comienza desde 1 y debe imprimirse hasta que su valor sea 5. Entonces, la condición que se agregará es a<=5 .
- La tercera expresión es la actualización. Cada vez que la variable de bucle, aquí ‘a’, necesita actualizarse de acuerdo con el código esperado. Aquí el valor de ‘a’ se incrementa en 1 en cada operación de impresión. Por lo tanto, a++ sería adecuado en esta situación.
- La última expresión es el cuerpo, que es la acción requerida para ser realizada de manera repetitiva. Aquí el valor de ‘a’ se imprime en cada ejecución.
A continuación se muestra la ejecución del código requerido con la ayuda de Loop:
class GFG { public static void main(String args[]) { int a; for (a = 1; a <= 5; a++) { System.out.println(a); } } }
Publicación traducida automáticamente
Artículo escrito por KrishnaMoorthy3 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA