【问题标题】:Concat two maps in golang在golang中连接两个地图
【发布时间】:2020-05-25 05:22:36
【问题描述】:

我知道golang中的append函数,但是有没有类似的函数来追加两个地图。

slice1 := []string{"hello"}
slice2 := []string{"world"}

combined := append(slice1, slice2...)

我尝试对地图做同样的事情,但它给了我这个错误:

追加的第一个参数必须是切片;有地图[字符串]字符串

有没有办法在go中追加两张地图?

【问题讨论】:

    标签: go


    【解决方案1】:

    只写一两个循环。

    map1 := map[string]int{
        "one": 1,
        "two": 2,
    }
    map2 := map[string]int{
        "uno": 1,
        "dos": 2,
    }
    
    combined := map[string]int{}
    for k, v := range map1 {
        combined[k] = v
    }
    for k, v := range map2 {
        combined[k] = v
    }
    
    fmt.Println(combined) // map[dos:2 one:1 two:2 uno:1]
    

    Try it on the playground.

    当然,如果两个映射具有重叠的键集,则顺序很重要。

    【讨论】:

      猜你喜欢
      • 2014-07-23
      • 2022-07-26
      • 2018-02-28
      • 1970-01-01
      • 2013-12-23
      • 2013-01-11
      • 1970-01-01
      • 1970-01-01
      • 2021-06-13
      相关资源
      最近更新 更多