golang中map声明及初始化

map的声明
var m1 map[string]int
map[key]value key必须支持==(避免使用浮点型)value不做规范
map的初始化
方式1
var m1 map[string]int=map[sting]int{“key”:0}
方式2
m2:=make(map[string]int)
注意:
map声明后初始化前,可进行查找、删除、len和range操作,并不会报错
map声明后不能进行赋值,只有初始化后才能进行赋值操作

// 先声明map
var m1 map[string]string
// 再使用make函数创建一个非nil的map,nil map不能赋值
m1 = make(map[string]string)
// 最后给已声明的map赋值
m1[“a”] = “aa”
m1[“b”] = “bb”

// 直接创建
m2 := make(map[string]string)
// 然后赋值
m2[“a”] = “aa”
m2[“b”] = “bb”

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

// ==========================================
// 查找键值是否存在
if v, ok := m1[“a”]; ok {
fmt.Println(v)
} else {
fmt.Println(“Key Not Found”)
}

// 遍历map
for k, v := range m1 {
fmt.Println(k, v)
}

你可能感兴趣的:(GO语言)