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

内容来自对 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]
}

你可能感兴趣的:(golang,开发语言,后端)