GeezerVisonThe World Wide Web, restored to 800 pixels of glory. |
| Home|About|Gaming cabinet|Archives|How it works|Starter sites |
GeezerVison is showing javaevolved.dev — String.lines() for line splitting | java.evolved
Strings
Beginner
String.lines() for line splittingUse String.lines() to split text into a stream of lines without regex overhead. Code Comparison
✕ 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);
See a problem with this code? Let us know.
Why the modern way wins
⚡
Lazy streamingLines are produced on demand, not all at once like split(). 🔧
Universal line endingsHandles \n, \r, and \r\n automatically without regex. 🔗
Stream integrationReturns a Stream for direct use with filter, map, collect. Old Approach
split("\\n")
Modern Approach
lines()
Since JDK
11
Difficulty
Beginner
JDK Support
String.lines() for line splitting
Available
Available since JDK 11 (September 2018). How it works
String.lines() returns a Stream<String> of lines split by \n, \r, or \r\n. It is lazier and more efficient than split(), avoids regex compilation, and integrates naturally with the Stream API for further processing. Related Documentation
Proof
Related patterns
Strings
Beginner
String.isBlank()Java 8
boolean blank =
str.trim().isEmpty();
// or: str.trim().length() == 0
Java 11+
boolean blank = str.isBlank(); // handles Unicode whitespace too
JDK 11+
→
Strings
Beginner
String.strip() vs trim()Java 8
// trim() only removes ASCII whitespace // (chars <= U+0020) String clean = str.trim(); Java 11+
// strip() removes all Unicode whitespace String clean = str.strip(); String left = str.stripLeading(); String right = str.stripTrailing();
JDK 11+
→
Strings
Beginner
String.indent() and transform()Java 8
String[] lines = text.split("\n");
StringBuilder sb = new StringBuilder();
for (String line : lines) {
sb.append(" ").append(line)
.append("\n");
}
String indented = sb.toString();
Java 12+
String indented = text.indent(4);
String result = text
.transform(String::strip)
.transform(s -> s.replace(" ", "-"));
JDK 12+
→
|
| You are visitor 01402503 — GeezerVison does not store the pages you look up. Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required. |