map 操作不是原子的,多个协程同时操作 map 时有可能产生读写冲突
如果需要并发读写,可以使用锁来保护 map,也可以使用标准库 sync 包中的 sync.Map
查询或者删除未初始化的 map 会报错
使用 make() 函数初始化 map 时可以不指定 map 容量
package main func main() { var m map[string]int if i, ok := m["a"]; ok { println(i) } delete(m, "a") //m["b"] = 2 //panic }
这道题你会答吗?花几分钟告诉大家答案吧!
扫描二维码,关注牛客网
下载牛客APP,随时随地刷题