7.4. Control de flujo en Java: operadores de comparación y estructuras de control
El control de flujo es un aspecto fundamental de la programación Java, que permite a un programa tomar decisiones y realizar repeticiones en función de las condiciones. Usar operadores de comparación y estructuras de control como if
, else
, switch
y bucles como for
, while
y do- while
, los programadores pueden crear programas dinámicos e interactivos. En esta sección, exploraremos estos conceptos en detalle.
Operadores de comparación
Los operadores de comparación se utilizan para comparar dos valores y devolver como resultado un valor booleano (verdadero o falso). Los operadores de comparación en Java son:
- == (igual a)
- != (diferente de)
- > (mayor que)
- < (menos de)
- >= (mayor o igual que)
- <= (menor o igual a)
int a = 10; int b = 20; System.out.println(a == b); // FALSO System.out.println(a!= b); // verdadero System.out.println(a > b); // FALSO System.out.println(a < b); // verdadero System.out.println(a >= 10); // verdadero System.out.println(a <= 9); // FALSO
Estructura de control if
y else
La estructura de control if
permite ejecutar un bloque de código sólo si una condición especificada es verdadera. Si la condición es falsa, el programa puede optar por no hacer nada o ejecutar un bloque de código alternativo usando else
.
puntuación int = 75;
si (puntuación >= 90) {
System.out.println("¡Excelente!");
} si no (puntuación >= 70) {
System.out.println("¡Bien!");
} demás {
System.out.println("¡Inténtalo de nuevo!");
}
El ejemplo anterior comprueba la puntuación e imprime el mensaje correspondiente. Si la puntuación es mayor o igual a 90, imprime "¡Excelente!". Si está entre 70 y 89, imprime "¡Bien!". De lo contrario, imprime "¡Inténtalo de nuevo!".
Estructura de control interruptor
La estructura switch
es una alternativa al uso de múltiples if
y else if
. Permite dirigir el flujo del programa a diferentes bloques de código según el valor de una variable.
calificación de carácter = 'B';
interruptor (red) {
caso 'A':
System.out.println("¡Excelente!");
romper;
caso 'B':
System.out.println("¡Muy bien!");
romper;
caso 'C':
System.out.println("¡Bien!");
romper;
caso 'D':
System.out.println("¡Satisfactorio!");
romper;
caso 'F':
System.out.println("¡Error!");
romper;
por defecto:
System.out.println("Nota no válida");
romper;
}
En el ejemplo anterior, el programa imprime "¡Muy bien!" porque el valor de calificación
es 'B'. La palabra clave break
se utiliza para salir del switch
después de que se haya ejecutado el caso correspondiente.
Bucles
Los bucles son estructuras que repiten un bloque de código siempre que una condición sea verdadera. Los tres tipos principales de bucles en Java son for
, while
y do- while
.
Bucle para
El bucle for
se utiliza a menudo cuando se conoce el número de iteraciones. Consta de tres partes: inicialización, condición e incremento/decremento.
for (int i = 0; i < 5; i++) {
System.out.println("i = " + i);
}
El código anterior imprime los números del 0 al 4. La variable i
se inicializa a 0 y el bucle continúa mientras i
sea menor que 5, incrementando i
por 1 en cada iteración.
Bucle mientras
El bucle while
ejecuta un bloque de código repetidamente siempre que una condición especificada sea verdadera. La condición se evalúa antes de cada iteración.
int recuento = 0; mientras (cuenta < 5) { System.out.println("cuenta = " + cuenta); contar++; }
El ejemplo anterior tiene el mismo comportamiento que el bucle for
anterior, imprimiendo los números del 0 al 4.
Bucle hacer-mientras
El bucle do- while
es similar al while
, pero la condición se evalúa después de que se haya ejecutado el bloque de código, lo que garantiza que el bloque se ejecute al menos una vez. .
int recuento = 0; del { System.out.println("cuenta = " + cuenta); contar++; } mientras (cuenta < 5);
Al igual que los ejemplos anteriores, este código imprime los números del 0 al 4.
Conclusión
Los operadores de comparación y las estructuras de control son esenciales para crear programas dinámicos en Java. Permiten a los desarrolladores escribir código que pueda tomar decisiones y realizar tareas repetitivas. La práctica y comprensión de estosEstos conceptos son fundamentales para cualquiera que quiera aprender Java en profundidad.
Una vez que se sienta cómodo con estas estructuras de control, podrá crear programas más complejos y funcionales. Recuerde que el flujo de control es la columna vertebral de la lógica de programación y profundizar en estas áreas le abrirá las puertas al desarrollo de software avanzado y eficiente.