Nested Maps

Nested Maps are those in which values in key:value pairs of the outer map are also maps. In other words maps inside a map, hence nested maps.

In this tutorial, we will learn how to create nested maps in Go language, with the help of example programs.

Create Nested Map

Similar to how we declare the type of key and value while defining a map, since values are also maps, to define a map x with keys of string type, and values of type map[string]string, use the following code.

var x = map[string]map[string]string{}

Example

In the following example, we will define a nested map, and initialize it with some values.

example.go

package main

import (
	"fmt"
)

func main() {
	var x = map[string]map[string]string{}

	x["fruits"] = map[string]string{}
	x["colors"] = map[string]string{}

	x["fruits"]["a"] = "apple"
	x["fruits"]["b"] = "banana"

	x["colors"]["r"] = "red"
	x["colors"]["b"] = "blue"

	fmt.Println(x)
}

Output

map[colors:map[b:blue r:red] fruits:map[a:apple b:banana]]
ADVERTISEMENT

Conclude

In this Golang Tutorial, we learned what a nested map is, and how to create it with examples.