要定义地图,我们可以做这样的事情:
value, present := m["key"]
或者:
value := m["key"]
使用类型断言,我们可以:
var i interface{} = "hello"
s := i.(string)
fmt.Println(s)
s, ok := i.(string)
fmt.Println(s, ok)
但我找不到定义可以返回 1 个值或 2 个值的 func 的方法。
例如:
func hello() (string, error) {
return "world", nil
}
当我调用这个函数时,我得到:
v, ok := hello() // valid
v := hello() // invalid
PS:我知道类似的东西是如何template.Must工作的,但它似乎不同。我真的很想知道 Map 和类型断言是如何发挥魔力的,所以我可以将它应用到函数中。
提前致谢。(我清楚吗?我英语不好抱歉)。
烙印99
相关分类