Встречается на собеседованиях • сегодня

Как работает под капотом StringBuilder

StringBuilder использует изменяемый массив символов (char[]) для хранения строки. При создании выделяется начальный буфер (по умолчанию 16 символов). При добавлении данных проверяется емкость:

  1. Если места хватает - символы добавляются в массив
  2. Если нет - создается новый массив (обычно в 2 раза больше), данные копируются, затем добавляются новые

Пример:

java
StringBuilder sb = new StringBuilder(); // char[16]
sb.append("Hello"); // заполняет 5 ячеек
sb.append(" World!"); // заполняет ещё 7 (всего 12)

Ключевые преимущества:

  • Не создает новые объекты при каждой операции
  • Оптимизирован для частых изменений
  • Методы append() возвращают this, позволяя цепочки вызовов

В отличие от String, который immutable, StringBuilder мутабелен и не потокобезопасен. Для многопоточности используют StringBuffer.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы