Las sentencias condicionales son fundamentales en cualquier lenguaje de programación, ya que permiten tomar decisiones basadas en condiciones específicas. En Java, las sentencias condicionales más comunes son if, else if, else y switch.

  1. Sentencia if

La sentencia if se utiliza para ejecutar un bloque de código solo si una condición específica es verdadera.

Sintaxis

if (condición) {
    // Bloque de código a ejecutar si la condición es verdadera
}

Ejemplo

public class IfExample {
    public static void main(String[] args) {
        int number = 10;

        if (number > 0) {
            System.out.println("El número es positivo.");
        }
    }
}

En este ejemplo, el mensaje "El número es positivo." se imprimirá porque la condición number > 0 es verdadera.

  1. Sentencia if-else

La sentencia if-else permite ejecutar un bloque de código si la condición es verdadera y otro bloque si la condición es falsa.

Sintaxis

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

Ejemplo

public class IfElseExample {
    public static void main(String[] args) {
        int number = -10;

        if (number > 0) {
            System.out.println("El número es positivo.");
        } else {
            System.out.println("El número es negativo o cero.");
        }
    }
}

En este ejemplo, el mensaje "El número es negativo o cero." se imprimirá porque la condición number > 0 es falsa.

  1. Sentencia else if

La sentencia else if se utiliza para verificar múltiples condiciones. Si una condición es verdadera, se ejecuta el bloque de código correspondiente y se omiten las demás condiciones.

Sintaxis

if (condición1) {
    // Bloque de código a ejecutar si la condición1 es verdadera
} else if (condición2) {
    // Bloque de código a ejecutar si la condición2 es verdadera
} else {
    // Bloque de código a ejecutar si ninguna de las condiciones anteriores es verdadera
}

Ejemplo

public class ElseIfExample {
    public static void main(String[] args) {
        int number = 0;

        if (number > 0) {
            System.out.println("El número es positivo.");
        } else if (number < 0) {
            System.out.println("El número es negativo.");
        } else {
            System.out.println("El número es cero.");
        }
    }
}

En este ejemplo, el mensaje "El número es cero." se imprimirá porque las condiciones number > 0 y number < 0 son falsas.

  1. Sentencia switch

La sentencia switch se utiliza para seleccionar una de entre múltiples opciones basadas en el valor de una expresión. Es una alternativa más limpia y legible a múltiples sentencias else if.

Sintaxis

switch (expresión) {
    case valor1:
        // Bloque de código a ejecutar si expresión == valor1
        break;
    case valor2:
        // Bloque de código a ejecutar si expresión == valor2
        break;
    // Puedes tener tantos casos como necesites
    default:
        // Bloque de código a ejecutar si ninguno de los casos anteriores es verdadero
}

Ejemplo

public class SwitchExample {
    public static void main(String[] args) {
        int day = 3;
        String dayName;

        switch (day) {
            case 1:
                dayName = "Lunes";
                break;
            case 2:
                dayName = "Martes";
                break;
            case 3:
                dayName = "Miércoles";
                break;
            case 4:
                dayName = "Jueves";
                break;
            case 5:
                dayName = "Viernes";
                break;
            case 6:
                dayName = "Sábado";
                break;
            case 7:
                dayName = "Domingo";
                break;
            default:
                dayName = "Día inválido";
                break;
        }

        System.out.println("El día es: " + dayName);
    }
}

En este ejemplo, el mensaje "El día es: Miércoles" se imprimirá porque el valor de day es 3.

Ejercicios Prácticos

Ejercicio 1

Escribe un programa que determine si un número ingresado por el usuario es par o impar.

Solución

import java.util.Scanner;

public class ParImpar {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.print("Ingresa un número: ");
        int number = scanner.nextInt();

        if (number % 2 == 0) {
            System.out.println("El número es par.");
        } else {
            System.out.println("El número es impar.");
        }
    }
}

Ejercicio 2

Escribe un programa que determine la calificación de un estudiante basada en su puntaje. Usa la siguiente tabla:

Puntaje Calificación
90-100 A
80-89 B
70-79 C
60-69 D
0-59 F

Solución

import java.util.Scanner;

public class Calificacion {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.print("Ingresa el puntaje del estudiante: ");
        int score = scanner.nextInt();
        char grade;

        if (score >= 90 && score <= 100) {
            grade = 'A';
        } else if (score >= 80 && score <= 89) {
            grade = 'B';
        } else if (score >= 70 && score <= 79) {
            grade = 'C';
        } else if (score >= 60 && score <= 69) {
            grade = 'D';
        } else {
            grade = 'F';
        }

        System.out.println("La calificación es: " + grade);
    }
}

Conclusión

En esta sección, hemos aprendido sobre las sentencias condicionales en Java, incluyendo if, else if, else y switch. Estas estructuras de control son esenciales para tomar decisiones en nuestros programas. Asegúrate de practicar con los ejercicios proporcionados para reforzar tu comprensión. En el próximo módulo, exploraremos los bucles, que nos permitirán ejecutar bloques de código repetidamente bajo ciertas condiciones.

Curso de Programación en Java

Módulo 1: Introducción a Java

Módulo 2: Flujo de Control

Módulo 3: Programación Orientada a Objetos

Módulo 4: Programación Orientada a Objetos Avanzada

Módulo 5: Estructuras de Datos y Colecciones

Módulo 6: Manejo de Excepciones

Módulo 7: Entrada/Salida de Archivos

Módulo 8: Multihilo y Concurrencia

Módulo 9: Redes

Módulo 10: Temas Avanzados

Módulo 11: Frameworks y Librerías de Java

Módulo 12: Construcción de Aplicaciones del Mundo Real

© Copyright 2024. Todos los derechos reservados