String.repeat()
Повторение строки n раз без цикла.
Сравнение кода
✕ Java 8
StringBuilder sb = new StringBuilder();
for (int i = 0; i < 3; i++) {
sb.append("abc");
}
String result = sb.toString();
✓ Java 11+
String result = "abc".repeat(3); // "abcabcabc"
Заметили проблему в этом коде? Сообщите нам.
Почему современный подход лучше
Однострочник
Заменяет 5 строк кода с StringBuilder одним вызовом.
Оптимизировано
Внутренняя реализация оптимизирована для большого числа повторений.
Ясное намерение
repeat(3) сразу передаёт цель.
Старый подход
Цикл с StringBuilder
Современный подход
repeat()
Начиная с JDK
11
Сложность
Начинающий
Поддержка JDK
String.repeat()
Доступно
Широко доступно с JDK 11 (сентябрь 2018)
Как это работает
String.repeat(int) возвращает строку, объединённую с собой n раз. Обрабатывает граничные случаи: repeat(0) возвращает пустую строку, repeat(1) возвращает ту же строку.
Связанная документация
Доказательство