Iniciante Fundamentos

Maps

Maps guardam pares de chave e valor. São ótimos para buscar dados por uma chave.

Criando um map

idades := map[string]int{
	"Ana":  30,
	"João": 25,
}

Ou com make:

precos := make(map[string]float64)
precos["café"] = 5.50

Acessando valores

fmt.Println(idades["Ana"]) // 30

Se a chave não existe, retorna o zero value do tipo:

fmt.Println(idades["Carlos"]) // 0

Verificando se a chave existe (comma-ok)

valor, existe := idades["Ana"]
if existe {
	fmt.Println("Encontrado:", valor)
} else {
	fmt.Println("Não existe")
}

Removendo uma chave

delete(idades, "João")

Percorrendo um map

for nome, idade := range idades {
	fmt.Println(nome, idade)
}

Resumo

  • Maps associam chaves a valores.
  • Use o padrão comma-ok para saber se a chave existe.
  • delete remove uma chave do map.