Text block """
Многострочный строковый литерал в тройных кавычках.
Доступно с: Java 15
Синтаксис
""" ... """Примеры
Текстовый блок с JSON — кавычки внутри экранировать не нужно:
void main() {
String json = """
{
"name": "Anna",
"age": 30
}
""";
IO.print(json);
}Результат:
{
"name": "Anna",
"age": 30
}Общий отступ убирается, перевод строки после последней строки есть, если закрывающие кавычки на новой строке:
void main() {
String a = """
hello
""";
String b = """
hello""";
IO.println(a.length() + " " + b.length());
}Результат:
6 5Примечания
После открывающих """ обязательно идёт перевод строки. Отступ определяется по самой левой строке, включая строку с закрывающими кавычками. Пробелы в конце строк удаляются; \ в конце строки склеивает её со следующей, а \s сохраняет пробел.
См. также
- String.formatted() — Подставляет значения в саму строку как в шаблон — короткая форма String.format().
- String.lines() — Разбивает строку на строки по переводам строки и возвращает их потоком.
- String.strip() — Удаляет любые пробельные символы Unicode в начале и в конце строки.
Вопросы и ответы по теме
В учебнике
- Текстовые блоки и форматирование — Многострочные текстовые блоки в Java, форматирование строк через formatted, String.format и printf, спецификаторы %s, %d, %f и ширина поля.