在 Go 语言中,判断 map 中是否包含某个 key 有两种方法:
方法一:使用 if
语句
Go
m := map[string]int{
"a": 1,
"b": 2,
"c": 3,
}
if _, ok := m["a"]; ok {
fmt.Println("key \"a\" exists")
} else {
fmt.Println("key \"a\" does not exist")
}
该示例会输出以下内容:
key "a" exists
方法二:使用 delete
函数
Go
m := map[string]int{
"a": 1,
"b": 2,
"c": 3,
}
_, ok := delete(m, "a")
if ok {
fmt.Println("key \"a\" exists")
} else {
fmt.Println("key \"a\" does not exist")
}
该示例会输出以下内容:
key "a" exists
两种方法的比较
两种方法都可以判断 map 中是否包含某个 key,但使用 if
语句的方法效率更高,因为 delete
函数会执行一次 map 查找操作。
总结
在 Go 语言中,可以使用 if
语句或 delete
函数来判断 map 中是否包含某个 key。推荐使用 if
语句的方法,因为它效率更高。