Table of Contents
Las estructuras de control
Estructura if
La sentencia if
permite tomar una decision en base a una condición. Dicha condición puede ser simple (comparar dos expresiones) o bien compleja, pudiéndose comparar múltiples expresiones unidas por cualquier operador lógico. Si el resultado final de la condición es
verdadero (la condición se cumple), se ejecutará el bloque de código asociado a la instrucción \verb if , y a continuación, el programa
seguirá inmediatamente después. En caso contrario, no se ejecutará ese código y el programa seguirá inmediatamente después.
if (condicion) { sentencias; }
if (x > 10) { System.out.println("x es mayor que 10"); }
Estructura if/else
En este caso la instrucción if
viene acompañada de un segundo bloque de instrucciones que se asocia al caso en que la condición de la instrucción no se cumpla. Ahora, cuando la condición asociada al caso \verb if no se cumpla, se ejecutará el bloque de código asociado al
caso \verb else antes de continuar inmediatamente después.
if (condicion) { sentencias_if; } else { sentencias_else; }
if (x == 10) { System.out.println("x vale 10"); } else { System.out.println("x no vale 10"); }
Estructura if/else if
Este es el caso más completo de la sentencia if
. Realmente es posible evaluar tantas condiciones como se deseen y asociar un bloque de código al cumplimiento de cada una de esas condiciones, teniendo en cuenta que, por cada sentencia if
sólo se acabará ejecutando un sólo bloque de instrucciones. Se ejecutará siempre el bloque asociado a la condición que antes se cumpla (en orden de arriba a abajo) o
el bloque asociado al caso \verb else si no se cumple ninguna condición (siempre que se haya incluido caso else
). Asi, es posible que, aún incluyendo una sentencia if
, puede que nunca se ejecute ninguna sentencia.
if (condicion1) { sentencias_1; } else if (condicion2) { sentencias_2; } else if (condicion3) { sentencias_3; } . . . . . . else { sentencias_else; }
if (x > 10) { System.out.println("x es mayor que 10"); } else if (x < 10) { System.out.println("x es menor que 10"); } else { System.out.println("x es igual a 10"); }
Operador lógicos en estructuras de control
Los operadores condicionales permiten evaluar varias expresiones como si se trataran de una sola condición
- Operador
AND
Representado por los caracteres&&
, se utiliza para combinar varias expresiones y que éstas sean evaluadas como una sola condición verdadera cuando todas ellas lo sean. Si alguna de ellas es falsa, el resultado siempre será falso indepedientemente del valor de todas las demás - Operador
OR
Representado por los caracteres||
, se utiliza para combinar varias expresiones y que éstas sean evaluadas como una sola condición verdadero simplemente con que una de ellas lo sea. Si todas ellas son falsas, el resultado de la condición compuesta será falso - Operador
NOT
Representado por el caracter!
, se utiliza para invertir el resultado de la expresión que queda a su derecha.
if ((x > 10) && (x < 20)) { System.out.println("El valor de x está entre 10 y 20"); }
if ((x == 10) || (x == 20)) { System.out.println("El valor de x es 10 o 20"); }
if (!(x == 10)) { System.out.println("x es distinto que 10"); }
Estructura switch-case
La sentencia switch-case
permite tomar una decisión en base al valor de una variable. A cada posible valor se le asocia un bloque de sentencias que será ejecutado cuando la variable contenga dicho valor. Además, de forma similar a como ocurre con la sentencia if
,esta sentencia tiene un caso por defecto, en este caso se llama default
, cuyo bloque asociado se ejecutará en caso de que la variable
no tenga ninguno de los valores recogidos en los casos case
.
switch(condicion) { case valor_1: sentencias_1; break; case valor_2: sentencias_2; break; case valor_3: sentencias_3; break; default: sentencia_default; break; }
switch(color) { case "azul": System.out.println("El color es azul"); break; case "rojo": System.out.println("El color es rojo"); break; case "negro": System.out.println("El color es negro"); break; default: System.out.println("No es ninguno de los colores seleccionados"); break; }
© 2019-2024 Santiago Faci