Golang : Iterate map
Got a question by a friend asking how to how to iterate through a map in Golang today. Thought that I have covered this initially with the tutorial on how to iterate over the values inside array., but then it is not similar.
In this short tutorial, we will learn how to iterate the elements inside a map. In this code example below, we will learn how to combine maps with the help of interface{}
(optional) and then iterate through the maps.
package main
import "fmt"
func main() {
type Map1 map[string]interface{}
type Map2 map[string]string
// because Map1 is type interface, it can handle 3 maps of Map2
m := Map1{"1": Map2{"position": "first"}, "2": Map2{"position": "second"}, "3": Map2{"position": "third"}, "4": Map2{"position": "fourth"}}
// print out all the elements in one line
fmt.Println("m:", m)
// iterate the map and print out the element one by one
for key, value := range m {
fmt.Println("key:", key, "value:", value)
}
// NOTE : maps in golang has no guaranteed order
}
Hope this tutorial can be helpful in solving or assisting your Golang learning process.
See also : Golang : How to iterate over a []string(array)
By Adam Ng
IF you gain some knowledge or the information here solved your programming problem. Please consider donating to the less fortunate or some charities that you like. Apart from donation, planting trees, volunteering or reducing your carbon footprint will be great too.
Advertisement
Tutorials
+13.8k Golang : Set image canvas or background to transparent
+18.2k Golang : Qt image viewer example
+6.6k Golang : Break string into a slice of characters example
+9.8k Golang : How to generate Code 39 barcode?
+27.9k Golang : dial tcp: too many colons in address
+6.1k Golang : Generate multiplication table from an integer example
+27.7k Golang : Convert integer to binary, octal, hexadecimal and back to integer
+15.8k Chrome : ERR_INSECURE_RESPONSE and allow Chrome browser to load insecure content
+5.4k Python : Convert(cast) string to bytes example
+5.6k Gogland : Datasource explorer
+15.5k Golang : Delete certain files in a directory
+12.1k Golang : GTK Input dialog box examples