Go Tutorials

Go Programs

How to Iterate Over Values in a Map in Go


How to Iterate Over Values in a Map in Go ?

Answer

To iterate over values in a map in Go, you can use a range-based for loop. This allows you to access each value in the map.



✐ Examples

1 Iterating Over Values Using Range-Based For Loop

We can iterate over values in a map in Go using a range-based for loop, which provides a convenient syntax for iterating over all values in the map.

For example,

  1. 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.
  2. We use a range-based for loop to iterate over the map. The loop extracts the value from each key-value pair in the map.
  3. We print each value to the console using the fmt.Println function to verify that we are iterating over all 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 values using range-based for loop
    for _, value := range myMap {
        fmt.Println(value)
    }
}

Output

1
2
3

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,

  1. 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.
  2. 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.
  3. We print each value along with its corresponding key 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 Values Separately

We can store values in a separate slice and then iterate over the slice in Go, which provides a way to work with values independently of their keys.

For example,

  1. 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.
  2. We declare a slice named values to store the values from the map.
  3. We use a range-based for loop to iterate over the map and append each value to the values slice.
  4. We use another range-based for loop to iterate over the values slice and print each value to the console using the fmt.Println function to verify that we have stored all values 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 values
    var values []int

    // Store values in the slice
    for _, value := range myMap {
        values = append(values, value)
    }

    // Iterate over the values slice
    for _, value := range values {
        fmt.Println(value)
    }
}

Output

1
2
3

Summary

In this tutorial, we learned How to Iterate Over Values in a Map in Go language with well detailed examples.




More Go Maps Tutorials

  1. How to create an Empty Map in Go ?
  2. How to create a Map with Initial Key-Value Pairs in Go ?
  3. How to Print a Map in Go ?
  4. How to Add a Key-Value Pair to a Map in Go ?
  5. How to Set a Default Value for a Key in a Map in Go ?
  6. How to Update the Value for a Key in a Map in Go ?
  7. How to Check if a Map is Empty in Go ?
  8. How to Check if a Key Exists in a Map in Go ?
  9. How to Check if a Value Exists in a Map in Go ?
  10. How to Get the Value Associated with a Key in a Map in Go ?
  11. How to Remove a Key-Value Pair from a Map in Go ?
  12. How to Remove Key-Value Pairs from a Map Based on Values in Go ?
  13. How to Clear All Key-Value Pairs from a Map in Go ?
  14. How to Iterate Over Keys in a Map in Go ?
  15. How to Iterate Over Values in a Map in Go ?
  16. How to Iterate Over Entries (Key-Value Pairs) in a Map in Go ?
  17. How to Get the Size (Number of Key-Value Pairs) of a Map in Go ?
  18. How to Convert a Map to an Array of Keys in Go ?
  19. How to Convert a Map to an Array of Values in Go ?
  20. How to Convert a Map to an Array of Key-Value Pairs in Go ?
  21. How to Merge Two Maps in Go ?
  22. How to Copy a Map in Go ?
  23. How to Check if Two Maps are Equal in Go ?
  24. How to Sort a Map by Keys in Go ?
  25. How to Sort a Map by Values in Go ?
  26. How to Filter a Map Based on Keys in Go ?
  27. How to Filter a Map Based on Values in Go ?
  28. How to Reduce Values in a Map to a Single Value in Go ?
  29. How to Convert an Array of Key-Value Pairs to a Map in Go ?
  30. How to Convert a Map to a JSON String in Go ?
  31. How to Convert a JSON String to a Map in Go ?
  32. How to Swap Keys and Values in a Map in Go ?
  33. How to Create a Map of Maps in Go ?
  34. How to Iterate Over a Map of Maps in Go ?