Junior — Middle
Como é que a inserção de elementos num array dinâmico (slice) é feita na linguagem de programação?
sobes.tech IA
Resposta da IA
Na linguagem Go, arrays dinâmicos são representados por slices. A inserção de elementos em um slice geralmente é feita usando a função append, que adiciona novos elementos ao final do slice. Se o array interno do slice não for grande o suficiente, append alocará um novo array de maior tamanho, copiará os dados para lá e retornará um novo slice.
Exemplo de inserção de um elemento:
s := []int{1, 2, 3}
s = append(s, 4) // s agora é [1 2 3 4]
Para inserir um elemento no meio de um slice, pode-se usar uma combinação de slices e append:
s := []int{1, 2, 4, 5}
index := 2
value := 3
s = append(s[:index], append([]int{value}, s[index:]...)...)
// s agora é [1 2 3 4 5]
Assim, inserir elementos em um slice é criar um novo slice com os elementos necessários, usando append e operações com slices.