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

大家好,我是知秋君,一个会写博客吟诗的知秋码农。今天说一说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 
只听到从知秋君办公室传来知秋君的声音:

山抹微云,天连衰草,画角声断谯门。有谁来对上联或下联?

正确的做法:

此代码由一叶知秋网-知秋君整理
test := make(map[string]map[int]int) test["go"] = make(map[int]int) test["go"][0] = 0

一个常用的做法:

test := make(map[string]map[int]int) if test["go"] == nil { 

test["go"] = make(map[int]int) } test["go"][0] = 0
知秋君
上一篇 2024-07-03 15:31
下一篇 2024-07-03 15:31

相关推荐