¡Esta es una revisión vieja del documento!
Tabla de Contenidos
Sentencias de Control de Flujo
El flujo de un programa es el orden en el que se ejecutan las instrucciones. Mientras no lo controlemos siempre se ejecutará una instrucción después de otra, en el órden en el que estén escritas hasta el final del programa.
Existen ciertas instrucciones que permiten al código tomar decisiones sobre qué instrucciones vamos a ejecutar y cuales no. Dicho de otro modo, pueden elegir un camino en la ejecución del programa, descartando otro camino, todo ello basado en una condición.
La sentencia If
If (si, condicional) evalúa una expresión booleana (condición) y ejecuta unas instrucciones en caso de que sea true. Solo si la condición es true, se ejecutarán las instrucciones que indiquemos dentro del bloque if.
Un bloque de código viene delimitado por el carácter corchete { }.
if(condicion) { System.out.println("Se ha cumplido la condición"); System.out.println("Y puedo ejecutar varias instrucciones"); } System.out.println("Esto se ejecuta, se haya cumplido o no");
Si la condición se cumple se ejecutan las instrucciones del bloque if. Independientemente de si se cumple o no, después se continua con las instrucciones que hay después del bloque if.
La sentencia If-Else
Si queremos que se ejecuten unas instrucciones si se cumple una condición y otras distintas si no se cumple, usaremos la sentencia if-else.
El bloque else siempre es opcional.
if(condicion){ System.out.println("Se ha cumplido la condición"); }else{ System.out.println("No se ha cumplido la condición"); } System.out.println("Esto se ejecuta, se haya cumplido o no");
If-Else anidados
La sentencia if-else es una instrucción más de java. Al igual que cualquier otras instrucción, puede ser ejecutada dentro de otra sentencia if-else:
int edad = 5; if(edad >= 18){ System.out.println("Tienes 18 o mas."); } else if(edad >= 15){ System.out.println("Tienes 15 años o mas pero menos de 18."); } else if(edad >= 10){ System.out.println("Tienes 10 años o mas pero menos de 15."); } else{ System.out.println("Eres un crio."); }
Ámbito de una variable
El ámbito de una variable define su alcance de uso, o lo que es lo mismo, en que secciones (bloques) de código una variable estará disponible. Fuera de este ámbito, una variable no podrá ser accedida (no existe).
public static void main(String[] args){ int numero1 = 7; int numero2 = 6; if(numero1 > numero2){ String saludo = "Hola Mundo"; System.out.println(saludo); //Aquí tengo acceso a las variables numero1, numero2 y saludo. } //Aquí ya no existe la variable saludo } //Aquí dejaron de existir todas las variables
Las variables solo existen en el bloque en el que son declaradas.
La sentencia Switch
Switch nos permite evaluar un valor y ejecutar un bloque de instrucciones dependiendo de ese valor. Actúa parecido a una serie de sentencias if-else anidadas.
El switch buscará el valor de la variable entre los valores de los cases, y ejecutará el código del caso que coincida con dicho valor.
int variable = input.nextInt(); switch (variable) { case 1: System.out.println("Has seleccionado la opción 1"); break; case 2: System.out.println("Has seleccionado la opción 2"); break; case 15: System.out.println("Has seleccionado la opción 15"); break; ... default: //Opcional System.out.println("El valor no coincide con ningún caso"); }
Funcionamiento
- Switch funciona con los tipos: int, byte, short, char y String.
- Puede haber tantos cases como se desee.
- Cada case es seguido del valor a comparar (expresión literal del valor).
- Cuando la variable coincide con el valor de un case se ejecutan todas las instrucciones hasta encontrar la sentencia break.
- El uso del break no es obligatorio. Si un caso no tiene break, se ejecutarán todos los casos siguientes hasta encontrar un break.
- Puede existir un solo caso default, que se ejecutará cuando el valor de la variable no coincide con el valor de ningún caso.
El bucle for
El bucle while
El bucle Do-While
© 2025 Fernando Valdeón