gpt4 book ai didi

go - 将项目测试映射为表达式

转载 作者:数据小太阳 更新时间:2023-10-29 03:31:08 25 4
gpt4 key购买 nike

围棋之旅解释了如何测试映射中是否存在键:

m := make(map[string]int)
m["Answer"] = 42
v, ok := m["Answer"]
if ok { Do Something if set }
if !ok { Do Something if not set }

有没有办法不用赋值,表达式方式来测试,类似这样:

if m["Answer"] IS NOT NULL  { Do Something if set }
if m["Answer"] IS NULL { Do Something if not set }

或者

fmt.Println(m["Answer"] == nil)

最佳答案

我认为您试图不分配给 vok 变量?

这是不可能的。但是,有一个速记可用:

if v, ok := m["Answer"]; ok {
// Do something with `v` if set
} else {
// Do something if not set, v will be the nil value
}

如果您不关心该值,而只关心它的设置,请将 v 替换为 _

if _, ok := m["Answer"]; ok {
// Do something if set
} else {
// Do something if not set
}

关于go - 将项目测试映射为表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42459306/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com