任意の型のキーと任意の型の要素を保持する特殊な配列をマップと呼ぶ。他言語では連想配列と呼ぶ。
キーが「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)で下記のように表示される。
ここで、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)すると、下記のように表示される。