Как лучше добавить что-то в строку в цикле

«Как лучше добавить что-то в строку в цикле» — вопрос из категории Golang, который задают на 23% собеседований Golang Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

В Go для эффективного добавления в строку в цикле лучше использовать strings.Builder, так как он минимизирует аллокации памяти. Обычная конкатенация строк через + создает новую строку на каждой итерации, что неэффективно.

Пример:

var builder strings.Builder
for i := 0; i < 10; i++ {
    builder.WriteString("item ")
    builder.WriteString(strconv.Itoa(i))
    builder.WriteString(", ")
}
result := builder.String()

Ключевые моменты:

  • strings.Builder выделяет память буфера заранее
  • Методы WriteString работают без лишних аллокаций
  • В конце вызываем String() для получения результата

Для простых случаев можно использовать +=, но только если циклов немного.