How to Iterate Over Keys in a Map in Go - Step by Step Examples
How to Iterate Over Keys in a Map in Go ?
Answer
To iterate over keys in a map in Go, you can use a range-based for loop. This allows you to access each key in the map.
✐ Examples
1 Iterating Over Keys Using Range-Based For Loop
We can iterate over keys in a map in Go using a range-based for loop, which provides a convenient syntax for iterating over all keys in the map.
For example,
- We start by declaring and initializing a map named
myMap
with some key-value pairs. In this example, the map has string keys and integer values. - We use a range-based for loop to iterate over the map. The loop extracts the key from each key-value pair in the map.
- We print each key to the console using the
fmt.Println
function to verify that we are iterating over all keys.
Go Program
package main
import "fmt"
func main() {
// Declare and initialize a map
myMap := map[string]int{
"one": 1,
"two": 2,
"three": 3,
}
// Iterate over keys using range-based for loop
for key := range myMap {
fmt.Println(key)
}
}
Output
one two three
2 Iterating Over Keys and Values Using Range-Based For Loop
We can iterate over keys and values in a map in Go using a range-based for loop, which provides a way to access both keys and values.
For example,
- We start by declaring and initializing a map named
myMap
with some key-value pairs. In this example, the map has string keys and integer values. - We use a range-based for loop to iterate over the map. The loop extracts both the key and value from each key-value pair in the map.
- We print each key and its corresponding value to the console using the
fmt.Println
function to verify that we are iterating over all keys and values.
Go Program
package main
import "fmt"
func main() {
// Declare and initialize a map
myMap := map[string]int{
"one": 1,
"two": 2,
"three": 3,
}
// Iterate over keys and values using range-based for loop
for key, value := range myMap {
fmt.Println(key, value)
}
}
Output
one 1 two 2 three 3
3 Storing and Iterating Over Keys Separately
We can store keys in a separate slice and then iterate over the slice in Go, which provides a way to work with keys independently of their values.
For example,
- We start by declaring and initializing a map named
myMap
with some key-value pairs. In this example, the map has string keys and integer values. - We declare a slice named
keys
to store the keys from the map. - We use a range-based for loop to iterate over the map and append each key to the
keys
slice. - We use another range-based for loop to iterate over the
keys
slice and print each key to the console using thefmt.Println
function to verify that we have stored all keys separately.
Go Program
package main
import "fmt"
func main() {
// Declare and initialize a map
myMap := map[string]int{
"one": 1,
"two": 2,
"three": 3,
}
// Declare a slice to store the keys
var keys []string
// Store keys in the slice
for key := range myMap {
keys = append(keys, key)
}
// Iterate over the keys slice
for _, key := range keys {
fmt.Println(key)
}
}
Output
one two three
Summary
In this tutorial, we learned How to Iterate Over Keys in a Map in Go language with well detailed examples.
More Go Maps Tutorials
- How to create an Empty Map in Go ?
- How to create a Map with Initial Key-Value Pairs in Go ?
- How to Print a Map in Go ?
- How to Add a Key-Value Pair to a Map in Go ?
- How to Set a Default Value for a Key in a Map in Go ?
- How to Update the Value for a Key in a Map in Go ?
- How to Check if a Map is Empty in Go ?
- How to Check if a Key Exists in a Map in Go ?
- How to Check if a Value Exists in a Map in Go ?
- How to Get the Value Associated with a Key in a Map in Go ?
- How to Remove a Key-Value Pair from a Map in Go ?
- How to Remove Key-Value Pairs from a Map Based on Values in Go ?
- How to Clear All Key-Value Pairs from a Map in Go ?
- How to Iterate Over Keys in a Map in Go ?
- How to Iterate Over Values in a Map in Go ?
- How to Iterate Over Entries (Key-Value Pairs) in a Map in Go ?
- How to Get the Size (Number of Key-Value Pairs) of a Map in Go ?
- How to Convert a Map to an Array of Keys in Go ?
- How to Convert a Map to an Array of Values in Go ?
- How to Convert a Map to an Array of Key-Value Pairs in Go ?
- How to Merge Two Maps in Go ?
- How to Copy a Map in Go ?
- How to Check if Two Maps are Equal in Go ?
- How to Sort a Map by Keys in Go ?
- How to Sort a Map by Values in Go ?
- How to Filter a Map Based on Keys in Go ?
- How to Filter a Map Based on Values in Go ?
- How to Reduce Values in a Map to a Single Value in Go ?
- How to Convert an Array of Key-Value Pairs to a Map in Go ?
- How to Convert a Map to a JSON String in Go ?
- How to Convert a JSON String to a Map in Go ?
- How to Swap Keys and Values in a Map in Go ?
- How to Create a Map of Maps in Go ?
- How to Iterate Over a Map of Maps in Go ?