String.indent()
Добавляет или убирает n пробелов в начале каждой строки текста.
Доступно с: Java 12
Синтаксис
public String indent(int n)Параметры
| Параметр | Тип | Описание |
|---|---|---|
| n | int | Сколько пробелов добавить; отрицательное число убирает пробелы. |
Возвращаемое значение
StringНовая строка; каждая строка, включая последнюю, заканчивается
.
Примеры
Отступ в 4 пробела для блока кода. Метод сам добавляет перевод строки в конце, поэтому здесь IO.print:
void main() {
String code = "if (ok) {\n run();\n}";
IO.print(code.indent(4));
}Результат:
if (ok) {
run();
}Отрицательное значение убирает пробелы, а stripIndent() убирает общий отступ всех строк:
void main() {
String text = " one\n two\n three";
IO.print(text.indent(-2));
IO.println(text.stripIndent());
}Результат:
one
two
three
one
two
threeПримечания
indent() заменяет любые переводы строк на \n и всегда добавляет \n в конец. Если у строки пробелов меньше, чем нужно убрать, удаляются все её начальные пробелы. stripIndent() (Java 15) делает с обычной строкой то же, что компилятор делает с текстовым блоком.
См. также
- String.lines() — Разбивает строку на строки по переводам строки и возвращает их потоком.
- Text block """ — Многострочный строковый литерал в тройных кавычках.
- String.strip() — Удаляет любые пробельные символы Unicode в начале и в конце строки.
- String.repeat() — Повторяет строку указанное число раз.
В учебнике
- Текстовые блоки и форматирование — Многострочные текстовые блоки в Java, форматирование строк через formatted, String.format и printf, спецификаторы %s, %d, %f и ширина поля.