0
点赞
收藏
分享

微信扫一扫

golang 代码实现一个工具函数:用于合并两个go map

_刘彦辉 2023-11-16 阅读 40

内容来自对 chatgpt 的咨询

初始化一个新 map,然后遍历两个旧 map,把每个元素都存到新 map 即可。

package main

import "fmt"

// MergeMaps 创建一个新的 map 用于保存合并后的值。返回新的 map。
func MergeMaps(destMap, sourceMap map[string]interface{}) map[string]interface{} {
	newMap := make(map[string]interface{})

    // 将目标 map 的元素复制到新 map 中
	for key, value := range destMap {
		newMap[key] = value
	}

	// 将源 map 中的元素合并到新 map 中
	for key, value := range sourceMap {
		newMap[key] = value
	}

	return newMap
}

func main() {
	map1 := map[string]interface{}{"key1": "value1", "key2": "value2"}
	map2 := map[string]interface{}{"key2": "new value2", "key3": "value3"}

	result := MergeMaps(map1, map2)

	fmt.Println(result) // Output: map[key1:value1 key2:new value2 key3:value3]
}



举报

相关推荐

0 条评论