Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationEventAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
124
Help us understand the problem. What are the problem?

More than 1 year has passed since last update.

@suin(Craftsman Software)
Organization

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

空っぽのマップを作る

パターン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

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
124
Help us understand the problem. What are the problem?