Language Avanzado

El pattern matching ahora funciona con tipos primitivos, no solo con objetos.

✕ Java 8
String classify(int code) {
    if (code >= 200 && code < 300)
        return "success";
    else if (code >= 400 && code < 500)
        return "client error";
    else
        return "other";
}
✓ Java 25 (Preview)
String classify(int code) {
    return switch (code) {
        case int c when c >= 200
            && c < 300 -> "success";
        case int c when c >= 400
            && c < 500 -> "client error";
        default -> "other";
    };
}
¿Ves un problema con este código? Cuéntanos.
📦

Sin boxing

Coincide con primitivos directamente — sin necesidad del wrapper Integer.

🎯

Consistencia de patrones

La misma sintaxis de patrones para objetos y primitivos.

Mejor rendimiento

Evita la sobrecarga del autoboxing en el pattern matching.

Enfoque Antiguo
Comprobaciones de rango manuales
Enfoque Moderno
Patrones primitivos
Desde JDK
25
Dificultad
Avanzado
Tipos primitivos en patrones
Preview

Preview en JDK 25 (tercer preview, JEP 507). Requiere --enable-preview.

Java 25 extiende el pattern matching a tipos primitivos. Puedes usar int, long, double, etc. en patrones de switch con guardas when, eliminando la necesidad de boxing o comprobaciones de rango manuales.

Compartir 𝕏 🦋 in