Strings 入门

使用 String.lines() 将文本分割为行流,无正则表达式开销。

✕ 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);
发现此代码有问题? 告诉我们。

懒加载流

行按需生成,不像 split() 那样一次全部生成。

🌐

正确的行分隔符

处理 \n、\r\n 和 \r,无需正则表达式。

🔗

可链式调用

直接链式调用 filter、map 和其他流操作。

旧方式
split("\\n")
现代方式
lines()
自 JDK
11
难度
入门
用 String.lines() 分割行
可用

自 JDK 11 起可用(2018 年 9 月)。

String.lines() 返回按 \n、\r 或 \r\n 分割的行的 Stream<String>。它是懒加载的,并正确处理所有行分隔符,无需正则表达式。

分享 𝕏 🦋 in