微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

数组 – 在Golang中将两个或多个[] map [string] interface {}类型合并为一个

我正在使用Golang,出于某种原因,我需要合并来自不同数据库查询的结果,所有这些都返回一个[] map [string] interface {}
我正在考虑追加,但如果这是可能的话,它还不够清楚.
我正在看的最终数据类型是什么?

显然,一个带键作为字符串的接口映射数组应该能够简单地“附加”(concat,如果可能)到另一个接口映射数组,其中键作为字符串!

那么实现这一目标的机制是什么?

即使答案已在上面的评论中给出,我将发布一个简短的例子,说明如何实现这一目标.
package main

import (
    "fmt"
)

func main() {
    result := []map[string]interface{}{}

    mp1 := map[string]interface{}{
        "one" : 1,"two" : 2,}

    mp2 := map[string]interface{}{
        "three" : 3,"four" : 4,}

    mp3 := make(map[string]interface{})
    for k,v := range mp1 {
        if _,ok := mp1[k]; ok {
            mp3[k] = v          
        }
    }

    for k,v := range mp2 {
        if _,ok := mp2[k]; ok {
            mp3[k] = v
        }
    }

    result = append(result,mp1,mp2)
    fmt.Println(result)
}

输出将是:

[map[one:1 two:2] map[three:3 four:4]]

Playground example

原文地址:https://www.jb51.cc/go/186867.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐