Sobes.tech
Junior — Middle

Que alterações ocorrem com o slice ao usar a função Append na linguagem Go?

sobes.tech IA

Resposta da IA

Na linguagem Go, a função append é usada para adicionar elementos a um slice. Quando append é chamado, as seguintes alterações ocorrem:

  • Se a capacidade do slice for suficiente, os novos elementos são simplesmente adicionados ao array existente, e o comprimento do slice aumenta.
  • Se a capacidade não for suficiente, um novo array de maior tamanho é criado, no qual os elementos antigos são copiados e os novos são adicionados. É retornado um novo slice que aponta para esse array.

É importante lembrar que append retorna um novo slice, portanto, é necessário atribuir o resultado de volta:

s := []int{1, 2, 3}
s = append(s, 4, 5)

Sem a atribuição, o slice original não será alterado.