Menu
Coddy logo textTech

Sentencia Switch

Parte de la sección Fundamentos del Journey de Java de Coddy. Lección 29 de 73.

La instrucción switch es como una instrucción if de múltiples opciones. En lugar de evaluar una sola condición, comprueba el valor de una variable con varios casos y ejecuta el código asociado al caso coincidente.

Esta es la estructura básica de una instrucción switch:

switch (variable) {
    case value1:
        // Código a ejecutar si variable es igual a value1
        break;
    case value2:
        // Código a ejecutar si variable es igual a value2
        break;
    // ... más casos
    default:
        // Código a ejecutar si ningún caso coincide
}
  • La palabra clave switch va seguida de la variable que quieres comprobar entre paréntesis.
  • Cada case representa un posible valor de la variable.
  • El código dentro de cada case se ejecuta si la variable coincide con el valor de ese case.
  • La instrucción break es crucial; sale de switch después de ejecutar un caso. Sin ella, la ejecución continuaría («fall through») hasta el caso siguiente.
  • El caso default es opcional y se ejecuta si ningún otro caso coincide.

Aquí tienes un ejemplo:

int day = 3;
String dayName;

switch (day) {
    case 1:
        dayName = "Monday";
        break;
    case 2:
        dayName = "Tuesday";
        break;
    // ... casos para otros días
    default:
        dayName = "Invalid day";
}

También puedes combinar varios casos en uno:

int day = 3;
String dayName;

switch (day) {
    case 1:
    case 2:
    case 3:
        dayName = "Start of week";
        break;
    // ... casos para otros días
    default:
        dayName = "Invalid day";
}
challenge icon

Desafío

Principiante

Crea un programa que reciba un número de mes (1 para enero, 2 para febrero, etc.) e imprima la estación a la que pertenece. Usa una instrucción switch para la lógica.

Las estaciones y sus meses correspondientes son:

  • Winter: diciembre (12), enero (1), febrero (2)
  • Spring: marzo (3), abril (4), mayo (5)
  • Summer: junio (6), julio (7), agosto (8)
  • Autumn: septiembre (9), octubre (10), noviembre (11)

Para cualquier otro número de mes, imprime "Invalid month".

Pruébalo tú mismo

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int month = scanner.nextInt();
        String season = "";
        
        // Escribe tu código a continuación
        
        
        System.out.println(season);
    }
}
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Fundamentos

Practica por tu cuenta: Compilador de Java online