DEV Community πŸ‘©β€πŸ’»πŸ‘¨β€πŸ’»

Cover image for Como remover dados duplicados em go
Will Koller
Will Koller

Posted on

Como remover dados duplicados em go

Ola devs e devas

Iremos usar de exemplo um slice de int para passarmos dados duplicados nele.

Criaremos um arquivo main.go de exemplo

Image description

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

Image description

E agora no main, ficaria assim:

Image description

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)

Collapse
cehasli profile image
Cehasli de Castro

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.

Collapse
williamkoller profile image
Will Koller Author

Muito obrigado, utilizar menos memΓ³ria jΓ‘ Γ© sensacional. Obrigado pela dica

🌚 Friends don't let friends browse without dark mode.

Sorry, it's true.