¿Qué cambió en el Java moderno (de 8 a 21) que todo desarrollador debería saber?
Respuesta
- Java 8: lambdas, streams,
Optional, métodos default, API java.time. - Java 9 a 11: módulos,
var para variables locales, List.of, cliente HTTP; Java 11 es LTS (soporte a largo plazo). - Java 14 a 17: records, switch expressions, text blocks, sealed classes, pattern matching para
instanceof; Java 17 es LTS. - Java 21 (LTS): virtual threads, record patterns, pattern matching para
switch, sequenced collections. - Di: "Trabajo sobre todo con la LTS actual y uso records, streams y
Optional a diario."
// Java 17+ examples
record User(String name, int age) {}
String text = """
multi-line
text block""";
Object o = 42;
if (o instanceof Integer i && i > 40) { System.out.println(i); }
String label = switch (day) {
case SATURDAY, SUNDAY -> "weekend";
default -> "weekday";
};
Practica esta pregunta en Repaso