String.lines() para dividir líneas
Usa String.lines() para dividir texto en un stream de líneas sin la sobrecarga de expresiones regulares.
Comparación de Código
✕ Java 8
String text = "one\ntwo\nthree";
String[] lines = text.split("\n");
for (String line : lines) {
System.out.println(line);
}
✓ Java 11+
String text = "one\ntwo\nthree"; text.lines().forEach(IO::println);
¿Ves un problema con este código? Cuéntanos.
Por qué gana la forma moderna
Streaming perezoso
Las líneas se producen bajo demanda, no todas a la vez como split().
Finales de línea universales
Maneja \n, \r y \r\n automáticamente sin regex.
Integración con Stream
Devuelve un Stream para uso directo con filter, map, collect.
Enfoque Antiguo
split("\\n")
Enfoque Moderno
lines()
Desde JDK
11
Dificultad
Principiante
Soporte JDK
String.lines() para dividir líneas
Disponible
Disponible desde JDK 11 (septiembre 2018).
Cómo funciona
String.lines() devuelve un Stream<String> de líneas divididas por \n, \r o \r\n. Es más perezoso y eficiente que split(), evita la compilación de regex y se integra naturalmente con la API de Stream para procesamiento posterior.
Documentación Relacionada