Exemplo:
O valor zero do mapa é considerado nulo (nil) e sendo assim não é possível adicionar novas chaves e valores no mesmo.
Criação de um mapa
Para criarmos um mapa utilizamos a sintaxe abaixo:nome_mapa = make (map[tipo_chave]tipo_valor)
Onde:
nome_mapa - Nome do mapa a ser criado.
tipo_chave - Tipo de chave do mapa a ser criado
tipo_valor - Tipo do valor que será referenciado pela chave.
Adição de valores
Para adicionar um valor a um mapa basta utilizar a sintaxe:nome_mapa[nome_chave]=valor
Onde:
nome_mapa - Nome do mapa a ser criado.nome_chave - Nome da chave referência do mapa
valor - Valor a ser referenciado pela chave.
Acesso a um valor
Para acessarmos o conteúdo de uma chave do mapa basta utilizar a sintaxe abaido:nome_mapa[nome_chave]
Onde:
nome_mapa - Nome do mapa a ser criado.nome_chave - Nome da chave referência do mapa
Exemplo:
package mainimport "fmt"
func main(){
//Criação do mapa
m:=make(map[string]string)
//Adição de valores
m["nome"]="Mario"
m["cpf"]="333.213.333-35"
//Acesso a um valor
fmt.Println(m["cpf"])
}
Saída do programa acima:
Criação rapida (literal)
Para criarmos um mapa utilizamos a sintaxe abaixo:
nome_mapa = map[tipo_chave]tipo_valor{
chave_1:valor_1, chave_2:valor_2
}
Onde:
nome_mapa - Nome do mapa a ser criado.
tipo_chave - Tipo de chave do mapa a ser criado
tipo_valor - Tipo do valor que será referenciado pela chave.
chave_1 - Nome da chave_1
valor_1 - Valor da chave_1
Exemplo:
package main
import "fmt"
func main(){
//Criação do mapa
m:=map[string]string{"nome":"Mario", "cpf":"333.213.333-35"}
//Acesso a um valor
fmt.Println(m["cpf"])
}
Deletando um valor do mapa
Para deletar um valor do mapa utilizamos a função delete
Sintaxe:
delete(nome_mapa,chave)
Onde:
nome_mapa - Nome do mapa a ter um item deletado
chave - Nome da chave a ser deletada.
Verificação de existência chave
Há caso que é necessário verificar se um elemento existe em um determinado mapa para isso usa sintaxe abaixo:
valor,verificador=nome_mapa[chave]
Onde:
valor - Valor da chave referenciado pela chave
verificador - Nome da variável que receberá o valor true (existe elemento) ou false (não existe o elemento)
Exemplo:
package main
import "fmt"
func main(){
//Criação do mapa
m:=map[string]string{"nome":"Mario", "cpf":"333.213.333-35"}
//Acesso a um valor
fmt.Println(m["cpf"])
//Verificação da existencia do elemento
valor,ok := m["cpf"]
fmt.Println("O elemento[cpf] valor= ",valor," existe ? ",ok)
//Remoção da chave cpf
delete(m,"cpf")
//Verificação da existencia do elemento
valor,ok = m["cpf"]
fmt.Println("O elemento[cpf] valor= ",valor," existe ? ",ok)
}
Abaixo é possível ver o resultado da execução do programa acima: