String.indent() und transform()
Text einrücken und String-Transformationen fließend verketten.
Code-Vergleich
✕ 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(" ", "-"));
Problem mit diesem Code entdeckt? Sag uns Bescheid.
Warum der moderne Weg gewinnt
Eingebaut
Einrückung ist eine häufige Operation – jetzt ein einziger Aufruf.
Verkettbar
transform() ermöglicht fließende Pipelines auf Strings.
Sauberer Code
Kein manuelles Aufteilen von Zeilen und StringBuilder-Schleifen.
Alter Ansatz
Manuelle Einrückung
Moderner Ansatz
indent() / transform()
Seit JDK
12
Schwierigkeitsgrad
Einsteiger
JDK-Unterstützung
String.indent() und transform()
Verfügbar
Weitgehend verfügbar seit JDK 12 (März 2019)
Wie es funktioniert
indent(n) fügt jeder Zeile n Leerzeichen hinzu. transform(fn) wendet eine beliebige Funktion an und gibt das Ergebnis zurück, was fließendes Verketten von String-Operationen ermöglicht.
Zugehörige Dokumentation