本文主要是介绍map赋值前要先初始化:assignment to entry in nil map,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
map赋值前要先初始化:assignment to entry in nil map
注意这种map的嵌套的形式,make只初始化了map[string]T部分(T为map[int]int),所以下面的赋值会出现错误:
test := make(map[string]map[int]int)
test["go"][0] = 0 // error
- 1
- 2
正确的做法:
test := make(map[string]map[int]int)
test["go"] = make(map[int]int)
test["go"][0] = 0
- 1
- 2
- 3
一个常用的做法:
test := make(map[string]map[int]int)
if test["go"] = nil {test["go"] = make(map[int]int)
}
test["go"][0] = 0
这篇关于map赋值前要先初始化:assignment to entry in nil map的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!