Para lograr esto, en la programación tenemos lo que llamamos condicionales anidados, esto se logra colocando bloques de instrucciones if dentro bloques de otros bloques if de un orden superior.
Condicionales Anidados
Como mencionamos anteriormente podemos hacer un anidamiento de condiciones evaluando algún parámetro entre varias opciones y luego podemos tener otros bloques de evaluación de condicional dentro del elegido donde podremos elegir entre las opciones que estamos evaluando.
Para ello podemos seguir la siguiente formulación en código donde veremos cómo colocar un condicional anidado que cumpla con esto que hemos descrito anteriormente:
import Java.util.Scanner; public class Anidados{ public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.println("Ingrese un numero entero: "); int number = input.nextInt(); //Evaluamos la condición inicial if (number > 3){ System.out.println("Ha introducido un número mayor de 3"); //Evaluamos una condición anidada if (number > 5){ System.out.println("El número es mayor a 5 también"); } } } }
Como vemos en el código lo que hacemos es evaluar un ingreso del usuario, dependiendo del número que ingrese cae dentro del condicional y luego dependiendo de nuevo de este número vemos si cae en el condicional anidado, en la siguiente imagen vemos como cumplimos las dos condiciones al ejecutar el programa:
Errores comunes en los bloques condicionales
Muchas veces durante el desarrollo de nuestra aplicación cometer algunos errores; estos errores pueden ser bastante molestos ya que muchas veces no nos damos cuenta si no hasta que estamos haciendo la compilación, dependiendo de la complejidad de nuestra aplicación este tiempo de compilación puede ser muy alto por lo que encontrar un error nos puede hacer perder mucho tiempo.
Veamos a continuación los errores más comunes:
Tendremos algo como lo que vemos en el siguiente código:
if(var > 0) total = var + 6; System.out.println("El resultado es: " + total);
Donde es incorrecta esa expresión y la correcta sería:
if(var > 0){ total = var + 6; System.out.println("El resultado es: " + total); }
Veamos el ejemplo en código de este error:
if(var > 0); { total = var + 6; System.out.println("El resultado es: " + total); }
Donde la forma correcta sería la siguiente:
if(var>0){} { total = var + 6; System.out.println("El resultado es: " + total); }
Como vemos es un problema que nos puede hacer obtener resultados incorrectos en nuestros programas.
Finalizando este tutorial ya sabemos cómo colocar condiciones anidadas, podemos incorporar expresiones mucho más inteligentes en nuestros programas de forma que logremos resultados cada vez más óptimos.