Sobes.tech
Junior — Middle

Quais são as vantagens e desvantagens de usar a estrutura de dados Map na linguagem Go?

sobes.tech IA

Resposta da IA

Em Go, a estrutura de dados map representa uma tabela de hash para armazenar pares chave-valor.

Vantagens:

  • Acesso rápido aos elementos por chave (em média O(1)).
  • Facilidade de uso e suporte embutido na linguagem.
  • Permite adicionar e remover elementos dinamicamente.

Desvantagens:

  • Não ordenado: a ordem de percorrer os elementos não é garantida.
  • Não é seguro para concorrência: requer sincronização ao aceder simultaneamente de várias goroutines.
  • Não pode usar como chave tipos que não suportem comparação (por exemplo, slices).

Exemplo de uso:

m := make(map[string]int)

m["apple"] = 5
fmt.Println(m["apple"]) // 5

// Verificação da existência da chave
value, ok := m["banana"]
if !ok {
    fmt.Println("Chave não encontrada")
}