关于golang:golang语法map常见错误golang-panic-assignment-to-entry-in-nil-map

map的申明

var map_variable map[key_data_type]`value_data_type`

申明后map的值默认为nil

map上的大部分操作,包含查找、删除、len和range循环都能够平安工作在nil值的map上,它们的行为和一个空的map相似。然而向一个nil值的map存入元素将导致一个panic异样:

golang panic: assignment to entry in nil map

在向map存数据前必须先应用golang内置的make函数创立map。

map_variable := make(map[key_data_type]value_data_type)

如果不初始化 map,那么就会创立一个 nil map。nil map 不能用来寄存键值对

将以上并为一句

// 初始化 + 赋值一体化
m := map[string]string{
    "a": "aa",
    "b": "bb",
}

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理