任意の型のキーと任意の型の要素を保持する特殊な配列をマップと呼ぶ。他言語では連想配列と呼ぶ。

キーが「name」、要素が「Tuyoshi」,キーが「reading」を要素が「Saito」の組み合わせを表示してみる。

package main

import "fmt"

func main() {
var m map[string]string
m = make(map[string]string)
m["name"] = "Tuyoshi"
m["reading"] = "Saito"

fmt.Println(m)
}

var m map[string]stringで文字列を指定する。m = make(map[string]string)で文字列を入れる配列を作るという意味がある。m["name"] = "Tuyoshi"でm["name"]をキーの値、"Tuyoshi"を要素の値と呼ぶ。m["reading"] = "Saito"でキーと要素を追加する。fmt.Println(m)で下記のように表示される。

key

ここで、name:Tuyoshiだけを表示したい場合は、fmt.Println(m)をfmt.Println(m["name"])とする。

もし、繰り返し表示したい場合は、下記のようにコードを記載する。

package main

import "fmt"

func main() {
var m map[string]string
m = make(map[string]string)
m["name"] = "Tuyoshi"
m["reading"] = "Saito"

for k, v := range m {
fmt.Println(k + ":" + v)
}
}

for k, v := range m でキーと要素に対応する値、k, v を決める。fmt.Println(k + ":" + v)すると、下記のように表示される。

tuyoshi