If

✅ If statements en Java

En este tutorial vamos a ver if statements en Java.

Los if son extremadamente importantes porque nos permiten construir programas que pueden tomar decisiones basadas en condiciones.

🌡️ Regla del clima

Vamos a implementar estas reglas:

  • Si la temperatura es mayor que 30“es un día caliente” y “beba agua”
  • Si está entre 20 y 30“buen día”
  • Si no → “día frío”

🧱 Estructura de un if

Un if siempre va así:

  • if + paréntesis (...)
  • adentro: una expresión booleana
  • luego: un bloque { ... } que se ejecuta si la condición es true

🧪 Ejemplo completo

Volvamos al archivo principal. Declaramos una variable temp en 32 y aplicamos las reglas:

public class Main{
    public static void main(String[] args){
        int temp = 32;

        if (temp > 30){
            System.out.println("Es un día caliente");
            System.out.println("Beba agua");
        } 
        else if (temp > 20 && temp <= 30){
            System.out.println("Buen día");
        } 
        else {
            System.out.println("Día frío");
        }
    }
}

▶️ ¿Qué pasa al ejecutar?

Como temp = 32:

  • temp > 30 es true
  • entonces se ejecuta el bloque del if

Y salen dos mensajes:

Es un día caliente
Beba agua

🧩 ¿Por qué usamos llaves {}?

Las curly braces definen un bloque de código.

✅ Son necesarias si quieres ejecutar más de una instrucción:

if (temp > 30){
    System.out.println("Es un día caliente");
    System.out.println("Beba agua");
}

Si solo tienes una línea, Java te deja omitirlas… pero ojo 👀

⚠️ Una sola línea sin {}

Java permite esto:

if (temp > 20)
    System.out.println("Buen día");

📌 Pero aquí solo pertenece al if la primera línea.

Por eso, mucha gente prefiere siempre usar {} para evitar errores. (En este curso las vamos a usar y luego te muestro cómo se ve sin ellas.)

✂️ Simplificando la condición

Mira esta parte:

else if (temp > 20 && temp <= 30)

Pero si ya falló temp > 30, entonces automáticamente sabemos que:

temp <= 30

Entonces podemos simplificar:

else if (temp > 20)

Más limpio, misma lógica.

🧼 Versión simplificada

public class Main{
    public static void main(String[] args){
        int temp = 32;

        if (temp > 30){
            System.out.println("Es un día caliente");
            System.out.println("Beba agua");
        } 
        else if (temp > 20){
            System.out.println("Buen día");
        } 
        else {
            System.out.println("Día frío");
        }
    }
}

😵 “Se ve feo” cuando quitamos llaves

Si quitamos llaves, a veces queda con indentación rara:

public class Main{
    public static void main(String[] args){
        int temp = 32;
        if (temp > 30){
            System.out.println("Es un día caliente");
            System.out.println("Beba agua");
        } else if (temp > 20)
            System.out.println("Buen día");
         else 
            System.out.println("Día frío");
    }
}

Se entiende… pero visualmente queda medio “chueco”.

✅ Forma más legible sin llaves

Si decides omitir llaves, una forma más bonita es poner else if y else en nueva línea:

public class Main{
    public static void main(String[] args){
        int temp = 32;

        if (temp > 30){
            System.out.println("Es un día caliente");
            System.out.println("Beba agua");
        }
        else if (temp > 20)
            System.out.println("Buen día");
        else
            System.out.println("Día frío");
    }
}

Así todas las “clases” (if, else if, else) quedan alineadas y el código se lee fácil.