在 Golang 中,可以使用 if
语句和 ok-idiom
来判断 map 是否包含指定的 key,并获取对应的 value 值。
示例代码如下:
// 创建一个 map
scores := map[string]int{
"Alice": 90,
"Bob": 80,
"Cindy": 70,
}
// 判断是否包含指定的 key
if score, ok := scores["Bob"]; ok {
fmt.Printf("Bob's score is %d\n", score)
} else {
fmt.Println("The score of Bob is not found")
}
在上面的示例中,我们创建了一个名为 scores
的 map,并给其初始化赋值。然后,我们通过 if
语句和 ok-idiom
来判断该 map 是否包含 "Bob"
这个 key。如果存在,则输出该 key 对应的 value 值;否则输出 “The score of Bob is not found”。
需要注意的是,在使用 ok-idiom
判断时,变量 score
和 ok
都是在 if 的作用域内定义的。因此,在 if 语句外无法访问这两个变量。