Sobes.tech
Back to questions
Junior — Middle
69

В чем преимущество использования класса StringBuilder по сравнению с обычным конкатенированием строк?

Answer from AI

sobes.tech AI

Класс StringBuilder в C# предназначен для эффективного построения и модификации строк, особенно когда нужно выполнить множество операций конкатенации.

Преимущество по сравнению с обычным конкатенированием строк:

  • Строки в C# являются неизменяемыми (immutable). При обычном сложении создаётся новая строка, а старая копируется, что приводит к дополнительным затратам памяти и времени.
  • StringBuilder хранит изменяемый буфер символов, позволяя добавлять, удалять и изменять содержимое без создания новых объектов.

Пример использования:

var sb = new StringBuilder();
sb.Append("Привет");
sb.Append(", мир!");
string result = sb.ToString();

Такой подход значительно эффективнее при большом количестве операций со строками, например, в циклах.