Senior
O que podes contar sobre o map em Go?
sobes.tech IA
Resposta da IA
Em Go, um mapa é um tipo de dado incorporado que implementa um array associativo ou dicionário, onde as chaves são associadas a valores.
Características do mapa em Go:
- As chaves e os valores têm tipos definidos, por exemplo,
map[string]int— chaves de string, valores inteiros. - O mapa é inicializado usando a função
make, por exemplo:m := make(map[string]int). - Acesso aos elementos através de
m[key]. - Se a chave não existir, é retornado o valor zero do tipo de valor.
- Pode verificar a existência de uma chave com o segundo valor de retorno:
val, ok := m[key]. - Os mapas não são ordenados, a ordem de percurso é arbitrária.
- Os mapas não são seguros para concorrência, para acesso concorrente deve-se usar sincronização.
Exemplo:
package main
import "fmt"
func main() {
m := make(map[string]int)
m["apple"] = 5
m["banana"] = 3
val, ok := m["apple"]
if ok {
fmt.Println("apple:", val)
}
// Remover uma chave
delete(m, "banana")
}