Saltar al contenido
NextPatch Blog

Java 21 LTS: hilos virtuales, pattern matching en switch y colecciones secuenciadas

JDK 21 salió el 19 de septiembre de 2023 y es LTS. Hilos virtuales, record patterns, pattern matching para switch y Sequenced Collections pasan a definitivos.

Java 2 min de lectura

JDK 21 alcanzó la disponibilidad general el 19 de septiembre de 2023 y es una versión LTS, la siguiente después de Java 17.

Hilos virtuales (JEP 444)

Hilos ligeros gestionados por la JVM, pensados para aplicaciones que pasan la mayor parte del tiempo esperando entrada/salida. Puedes tener millones sin agotar los hilos del sistema operativo:

java
try (var executor = Executors.newVirtualThreadPerTaskExecutor()) {
    pedidos.forEach(p -> executor.submit(() -> procesar(p)));
}

Pattern matching para switch (JEP 441) y record patterns (JEP 440)

Un switch puede decidir según el tipo, desestructurar records y tratar null en una rama propia:

java
record Punto(int x, int y) {}

String describe(Object o) {
    return switch (o) {
        case Integer i when i > 0 -> "entero positivo " + i;
        case Integer i            -> "entero " + i;
        case Punto(int x, int y)  -> "punto en " + x + "," + y;
        case null                 -> "nada";
        default                   -> "otra cosa";
    };
}

Colecciones secuenciadas (JEP 431)

Las colecciones con orden definido comparten interfaz: getFirst(), getLast(), addFirst(), addLast() y reversed(), tanto en List como en Deque, LinkedHashSet o LinkedHashMap (con sus equivalentes para mapas).

Más

  • JEP 439 — ZGC generacional.
  • JEP 452 — API de encapsulación de claves (KEM).
  • JEP 451 — preparación para prohibir la carga dinámica de agentes.
  • En preview: String Templates (retirada más tarde), variables sin nombre, clases sin nombre con main de instancia, Scoped Values y Structured Concurrency.

En NextPatch

La ruta Java 17 → 21: el salto entre LTS cubre todo esto, más lo que sigue en preview y no deberías llevarte a producción.

Pasa de leerlo a practicarlo.

Un resumen de 45 segundos y un reto de dos minutos al día. La cuenta es gratis y guarda tu XP, tu racha y tus insignias.

Crear cuenta gratis