如何检查地图是否包含 Go 中的键?

我知道我可以通过以下方式遍历地图m

for k, v := range m { ... }

并寻找一把钥匙,但有没有更有效的方法来测试钥匙在地图中的存在?

回答:

回答:

if val, ok := dict["foo"]; ok {

//do something here

}

解释:

ifGo 中的语句可以包括条件语句和初始化语句。上面的例子同时使用了:

  • 初始化两个变量 -val将从地图中接收“foo”的值或“零值”(在这种情况下为空字符串),ok并将接收一个布尔值,true如果“foo”实际上存在于地图中,它将被设置为
  • 评估oktrue如果“foo”在地图中

如果“foo”确实存在于映射中,则if语句的主体将被执行并且val在该范围内是本地的。

以上是 如何检查地图是否包含 Go 中的键? 的全部内容, 来源链接: utcz.com/qa/400551.html

回到顶部