Go · Essencial · Inglês · Técnico
strings.Builder
Tipo do pacote strings para montar texto aos poucos sem copiar a string a cada acréscimo. Usa um buffer interno e entrega o resultado com String().
Onde usar
Em laços que concatenam muitas partes, s += x cria uma string nova a cada volta. O Builder evita esse custo quadrático.
Em código
var sb strings.Builder
for i := range 3 {
fmt.Fprintf(&sb, "%d,", i)
}
sb.WriteString("fim")
fmt.Println(sb.String()) // 0,1,2,fimExemplos
Use a strings.Builder instead of concatenating in the loop.
Use um strings.Builder em vez de concatenar no laço.
The builder avoids allocating a new string on every append.
O builder evita alocar uma string nova a cada acréscimo.
Cuidado
Não copie um Builder depois de usá-lo; o runtime dispara panic. Passe sempre por ponteiro.