Sobes.tech
Middle — Senior

Como evitar a vírgula no final da linha ao formar o resultado?

sobes.tech IA

Resposta da IA

Para evitar a vírgula no final da linha ao formar o resultado em Go, pode usar várias abordagens:

  1. Usar strings.Builder e adicionar a vírgula apenas antes do elemento, começando pelo segundo:
var builder strings.Builder
items := []string{"maçã", "banana", "cereja"}

for i, item := range items {
    if i > 0 {
        builder.WriteString(",")
    }
    builder.WriteString(item)
}

resultado := builder.String() // "maçã,banana,cereja"
  1. Reunir todos os elementos num slice de strings e usar strings.Join:
items := []string{"maçã", "banana", "cereja"}
resultado := strings.Join(items, ",")
  1. Se estiver a formar a string num ciclo e não quiser usar um slice, pode remover cuidadosamente a última vírgula:
var builder strings.Builder
items := []string{"maçã", "banana", "cereja"}

for _, item := range items {
    builder.WriteString(item)
    builder.WriteString(",")
}

resultado := builder.String()
if len(resultado) > 0 {
    resultado = resultado[:len(resultado)-1] // remove a última vírgula
}

A melhor forma é usar strings.Join se todos os elementos já estiverem num slice.