Ответ
StringBuilder оптимизирует работу со строками, избегая создания множества промежуточных объектов при конкатенации. В отличие от обычных строк (String), которые иммутабельны, StringBuilder использует изменяемый буфер.
Пример:
val builder = StringBuilder()
for (i in 1..1000) {
builder.append(i) // Не создаёт новую строку каждый раз
}
val result = builder.toString()
Преимущества:
- Экономит память (не копирует строки при каждом изменении).
- Быстрее при множественных операциях (O(n) против O(n²) у
String). - Поддерживает методы
append(),insert(),delete()и др.
Важно: Для однократной конкатенации ("A" + "B") StringBuilder избыточен — компилятор оптимизирует это автоматически.