2012-08-29 39 views
8

在Go中將鍵值對從一個地圖合併到另一個地圖的最佳方式是什麼?我正在使用一個簡單的循環,但我想知道是否有像可以使用的PHP的array_merge在Go中合併地圖

bigmap := map[string]string{"a":"a", "b":"b", "c":"c"} 
smallmap := map[string]string{"d":"d"} 

for k, v := range smallmap { 
    bigmap[k] = v 
} 

回答

5

不,沒有。

這不會很有用,因爲您寫的明確代碼足夠短並且具有不隱藏實施的優勢。

如果你需要它你可以做你自己的功能:

func addmap(a map[string]string, b map[string]string) { 
    for k,v := range b { 
     a[k] = v 
    } 
} 

addmap(bigmap, smallmap) 

但由於Go有沒有仿製藥,你就必須做出不同的功能,你要使用的每個具體的地圖類型。

0

AFAIK,沒有內置或庫函數。我認爲你的代碼儘可能的好。