Condicionales en Java


  If... Else en Java


Ya sabes que Java soporta las condiciones lógicas habituales de las matemáticas:

🟡 Menos de: a < b
🟡 Menor o igual a: a <= b
🟡 Mayor que: a > b
🟡 Mayor o igual que: a >= b
🟡 Igual a: a == b
🟡 No es igual a: a != b

Puede utilizar estas condiciones para realizar diferentes acciones para diferentes decisiones.

Java tiene los siguientes condicionales:

🟡 Se usa if para especificar un bloque de código que se va a ejecutar, si una condición especificada es verdadera

🟡 Se usa else para especificar un bloque de código que se va a ejecutar, si la misma condición es false.

🟡 Se usa else if para especificar una nueva condición para probar, si la primera condición es false.

🟡 Se utiliza switch para especificar muchos bloques alternativos de código que se ejecutarán.


  La instrucción if

Utilice la sentencia if para especificar un bloque de código Java que se ejecutará si una condición es verdadera:

Sintaxis

  if (condition) {
    // Bloque de código que se ejecutará si la condición es verdadera
  }

Tenga en cuenta que if está en minúsculas. Las letras mayúsculas (If o IF) generarán un error.

En el siguiente ejemplo, probamos dos valores para averiguar si 20 es mayor que 18. Si la condición es verdadera, imprimirá algún texto:

Ejemplo 1

  if (20 > 18) {
    System.out.println("20 es mayor que 18");
  } 

Quiero intentarlo

También podemos probar variables:

Ejemplo 2

  int x = 20;
  int y = 18;
  if (x > y) {
    System.out.println("x es mayor que y");
  }    

Quiero intentarlo


  Ejemplo explicado

En el ejemplo anterior usamos dos variables, x - y, para comprobar si X es mayor que Y (utilizamos el operador >). Como x es 20, e y es 18, y sabemos que 20 es mayor que 18, imprimimos en la pantalla que "x es mayor que y".

  Else

Utilice la instrucción else para especificar un bloque de código que se ejecutará si la condición es falsa.

Sintaxis

  if (condición) {
    // Código a ejecutar si la condición es verdadera
  } else {
    // Código a ejecutar si la condición es falsa
  }        

Ejemplo 3

  int time = 20;
  if (time < 18) {
    System.out.println("Buenos días.");
  } else {
    System.out.println("Buenas noches.");
  }
  // Salida "Buenas noches."       

Quiero intentarlo


  Ejemplo explicado

En el ejemplo anterior, el tiempo (20) es mayor que 18, por lo que la condición es falsa. Debido a esto, pasamos a la condición else e imprimimos en la pantalla "Buena tarde". Si el tiempo era menos de 18, el programa imprimiría "Buenos días".

  Else If

Utilice la instrucción else if para especificar una nueva condición si la primera condición es falsa.

Sintaxis

  if (condición1) {
    // Código a ejecutar si la condición es verdadera
  } else if (condition2) {
    // Código a ejecutar si la condición 1 es falsa
  } else { 
    // Código a ejecutar si las 2 condiciones son falsas  
  } 

Ejemplo 4

  int time = 22;
  if (time < 10) {
     System.out.println("Buenos días.");
  } else if (time < 18) {
     System.out.println(Buenos días.");
  } else {
     System.out.println("Buenas noches.");
  }
  // Salida "Buenas noches."  

Quiero intentarlo


  Ejemplo explicado

En el ejemplo anterior, el tiempo (22) es mayor que 10, por lo que la primera condición es falsa. La siguiente condición, else if en la declaración, también es falsa, por lo que pasamos a la condición else, ya que la condición 1 y la condición 2 son falsas ambas, e imprimimos en la pantalla "Buenas tarde".

Sin embargo, si la hora era 14, nuestro programa imprimiría "Buenos días".

  If...else ternaria

También hay una abreviatura si-no, que se conoce como el ternario porque consta de tres operandos.

Se puede utilizar para Reemplazar varias líneas de código con una sola línea, y se usa con mayor frecuencia para reemplazar Declaraciones simples de If Else:

Sintaxis

  variable = (condición) ? expresión verdadera :  expresión falsa;

En lugar de escribir:

Ejemplo 5

  int time = 20;
  if (time < 18) {
    System.out.println("Buenos días.");
  } else {
    System.out.println("Buenas noches.");
  }      

Quiero intentarlo

Simplemente puede escribir:

Ejemplo 6

  int time = 20;
  String result = (time < 18) ? "Buenos días." : "Buenas noches.";
  System.out.println(result);      

Quiero intentarlo