Strings Начинающий

Добавление отступов к тексту и цепочечное применение строковых преобразований.

✕ 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(" ", "-"));
Заметили проблему в этом коде? Сообщите нам.
📏

Встроенный метод

Добавление отступов — частая операция, теперь это один вызов.

🔗

Цепочки вызовов

transform() позволяет строить цепочки операций над строками.

🧹

Чистый код

Не нужно вручную разбивать строки и писать циклы с StringBuilder.

Старый подход
Ручное добавление отступа
Современный подход
indent() / transform()
Начиная с JDK
12
Сложность
Начинающий
String.indent() и transform()
Доступно

Широко доступно с JDK 12 (март 2019)

indent(n) добавляет n пробелов к каждой строке. transform(fn) применяет произвольную функцию и возвращает результат, позволяя выстраивать цепочки строковых операций.