以下是一个用 Golang 编写的比较两个 map 的不同键值对的程序示例:
package main
import (
"fmt"
)
func main() {
map1 := map[string]int{
"a": 1,
"b": 2,
"c": 3,
}
map2 := map[string]int{
"a": 1,
"b": 4,
"d": 5,
}
diffMap := make(map[string]int)
for key, value := range map1 {
if val, ok := map2[key]; !ok || val != value {
diffMap[key] = value
}
}
for key, value := range map2 {
if val, ok := map1[key]; !ok || val != value {
diffMap[key] = value
}
}
fmt.Println("Different key-value pairs:")
for key, value := range diffMap {
fmt.Printf("%s: %d\n", key, value)
}
}
这个程序会比较两个 map
的键值对,并将不同的键值对存储在 diffMap
中。然后,程序会输出不同的键值对。
请注意,这里假设两个 map
的键和值都是相同类型。如果你需要处理不同类型的键或值,请适当修改代码。
内容由零声教学AI助手提供,问题来源于学员提问