Назад к вопросам
VK
Senior
3
Как можно эффективно склеить строки в Go? Какие варианты есть?
Компании, где спрашивали
Ответ от нейросети
sobes.tech AI
В Go для эффективного склеивания строк есть несколько вариантов:
- strings.Builder — оптимальный способ для последовательного добавления строк, минимизирует количество аллокаций.
var builder strings.Builder
builder.WriteString("Hello")
builder.WriteString(", ")
builder.WriteString("World!")
result := builder.String()
-
bytes.Buffer — похож на strings.Builder, но работает с байтами, тоже эффективен.
-
strings.Join — удобен, если есть срез строк, которые нужно объединить с разделителем.
parts := []string{"Hello", "World", "from", "Go"}
result := strings.Join(parts, " ")
- Конкатенация с помощью оператора
+— подходит для небольшого количества строк, но при большом числе конкатенаций неэффективна из-за создания новых строк.
Для больших объемов данных и циклов лучше использовать strings.Builder или bytes.Buffer.