Expresiones switch en Java
El switch moderno devuelve un valor y coincide patrones, no solo constantes.
var code = 404;
// el switch de flecha devuelve un valor; default lo mantiene exhaustivo
var message = switch (code) {
case 200 -> "ok";
case 301, 302 -> "redirected";
case 404 -> "not found";
default -> "unhandled " + code;
};
System.out.println(message);
// el pattern matching hace switch sobre el tipo
Object value = 3.5;
var kind = switch (value) {
case Integer n -> "int " + n;
case Double d -> "double " + d;
default -> "something else";
};
System.out.println(kind);
Cómo funciona
- Las ramas de flecha no necesitan
break;defaultmantiene el switch exhaustivo. case 301, 302coincide varias constantes en una sola rama.- Los patrones de tipo como
Integer nprueban y vinculan en un paso.
Palabras clave y builtins usados aquí
casedefaultswitchvar
El intento, en números
- Líneas
- 19
- Caracteres a escribir
- 475
- Tokens
- 114
- Ritmo de tres estrellas
- 85 tpm
Al ritmo de tres estrellas de 85 tokens por minuto, este intento toma unos 80 segundos.
Paso 2 de 3 en Control de flujo; paso 9 de 29 en Fundamentos del lenguaje.