Ola devs e devas
Iremos usar de exemplo um slice de int para passarmos dados duplicados nele.
Criaremos um arquivo main.go
de exemplo
Esse é o retorno:
intSliceValues [1 2 3 3 4 4 5 6 7 8 9 9 9]
Agora iremos criar uma function para remover os dados duplicados
E agora no main, ficaria assim:
O retorno:
intSliceValues [1 2 3 3 4 4 5 6 7 8 9 9 9]
uniqueSlice [1 2 3 4 5 6 7 8 9]
Conclusão:
A partir da função main, declaramos um slice. Também imprimimos o valor original da slice.
Definimos uma função onde estamos passando os valores originais do slice e verificando as duplicatas.
Lógica para verificação de duplicatas: Para isso definimos outra slice e atribuindo os primeiros valores verificando se o valor já existe na novo slice ou não. Ele retorna o slice sem duplicatas.
Estamos chamando a função removeDuplicate da função principal onde o slice de retorno da função é impressa.
Espeor ter ajudado.
Top comments (2)
Excelente artigo.
Na linha main.go:10, pelo valor ser um bool, poderia ser !keys[entry] também.
Uma coisa que alguns devs usam é um map[chave]struct{} já que o valor não é usado e dependendo da quantidade de chaves, usa menos memória.
Muito obrigado, utilizar menos memória já é sensacional. Obrigado pela dica