Iterate a map with range
suggest changeIteration order is not specified. Go randomizes the order of iteration on purpose so that code doesn’t incorrectly rely on specific order.
Iterate both keys and values
main.go
people := map[string]int{
"john": 30,
"jane": 29,
"mark": 11,
}
for key, value := range people {
fmt.Printf("key: %s, value: %d\n", key, value)
}
Output:
key: john, value: 30
key: jane, value: 29
key: mark, value: 11
Iterate just keys
main.go
people := map[string]int{
"john": 30,
"jane": 29,
"mark": 11,
}
for key := range people {
fmt.Printf("key: %s\n", key)
}
Output:
key: john
key: jane
key: mark
Iterate just values
main.go
people := map[string]int{
"john": 30,
"jane": 29,
"mark": 11,
}
for _, value := range people {
fmt.Printf("value: %d\n", value)
}
Output:
value: 30
value: 29
value: 11
Found a mistake? Have a question or improvement idea?
Let me know.
Table Of Contents