LoginSignup
188
128

More than 3 years have passed since last update.

Go言語: いろいろなマップの作り方まとめ

Last updated at Posted at 2014-02-14

空っぽのマップを作る

パターン1: var variable map[ key_type ] value_type = map[ key_type ] valute_type

長い書き方。

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

実行結果

map[string]string(nil)

パターン2: variable := make(map[ key_type ] value_type )

make を使った書き方。

languages := make(map[string]string)

実行結果

map[string]string{}

予め指定した要素数分のメモリを確保することもできる。

// 要素42個分の領域を予め確保
languages := make(map[string]string, 42)

パターン3: variable := map[ key_type ] value_type {}

短い書き方。

languages := map[string]string{}

実行結果

map[string]string{}

要素が入ったマップを作る

パターン1

長い書き方。

var languages map[string]string = map[string]string{"go":"golang", "rb":"ruby", "js":"javascript"}

実行結果

map[string]string{"go":"golang", "rb":"ruby", "js":"javascript"}

パターン2

短い書き方。

languages := map[string]string{"go":"golang", "rb":"ruby", "js":"javascript"}

実行結果

map[string]string{"go":"golang", "rb":"ruby", "js":"javascript"}

パターン3

各要素を改行する場合は、1要素ごとに カンマ,をつけないとパースエラーになるので注意。

languages := map[string]string{
    "go":"golang", 
    "rb":"ruby", 
    "js":"javascript",
}

パターン4

make で作った時はキーを指定して代入する。

languages := make(map[string]string)
languages["go"] = "golang"
languages["rb"] = "ruby"
languages["js"] = "javascript"

最後までお読みくださりありがとうございました。Twitterでは、Qiitaに書かない技術ネタなどもツイートしているので、よかったらフォローお願いします:relieved:Twitter@suin

188
128
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
188
128