Fundamentos de Go
Go Maps
Store values under keys: add, read, check, delete and loop in a fixed order.
O que você vai aprender
- Creating and updating
- The value, ok form
- Sorting the keys
stock
"apple"5"pear"5"plum"1Values found by key
A map stores values under keys, so you can find a value quickly by its key. It is Go's version of a dictionary or hash table.
Reading a missing key returns the zero value, so the second result, found, tells you whether the key exists. delete removes a key. A map has no fixed order, so the keys are collected and sorted before printing.
Pontos-chave
- A missing key reads as the zero value.
- value, found :=
m[key]tells you if it exists. - Map order is random: sort the keys.
Exemplo executável de Go
main.go
package main
import (
"fmt"
"sort"
)
func main() {
stock := map[string]int{"apple": 3, "pear": 5}
stock["plum"] = 1
stock["apple"] += 2
fmt.Println(stock["apple"], len(stock))
count, found := stock["kiwi"]
fmt.Println(count, found)
delete(stock, "pear")
names := make([]string, 0, len(stock))
for name := range stock {
names = append(names, name)
}
sort.Strings(names) // map order is random, so sort the keys
for _, name := range names {
fmt.Println(name, stock[name])
}
}
5 3
0 false
apple 5
plum 1Pratique
Abra o exemplo no compilador online, mude um valor ou adicione uma linha e tente prever a saída antes de executar. Depois quebre o código de propósito e leia a mensagem do compilador.
Terminou esta lição?
Marque como aprendida para acompanhar seu progresso.
Seu progresso está salvo neste navegador Entre para mantê-lo em todos os dispositivos.
Pratique com um desafio
Use o conteúdo desta lição para resolver um problema real. Cada desafio roda no navegador, com testes instantâneos e uma revisão por IA.
- Frequência de Caracteres Conte quantas vezes cada caractere aparece. Fácil
- Primeiro Caractere Único Encontre o primeiro caractere que aparece apenas uma vez. Fácil