在 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 语句的方法,因为它效率更高。
本文介绍了在Go语言中使用if语句和delete函数检查map中是否存在特定key的方法,指出if语句由于不执行删除操作,具有更高的效率。
1726





