//var m map[键类型]值类型
//map 是储存无序的
?
var m map[int]string = map[int]string{10:"A",11:"B",12:"C"}
?
//map 的遍历 range
for k,v:= range m{
fmt.Println(k,v)
}
?
//map 的声明
//var m map[int]string
?
//map 的初始化
//var m map[int]string = make(map[int]string)
?
//自动推导类型
m:=make(map[int]string)
?
//赋值 如果有就修改 没有就赋值
m[1] = "A"
m[2] = "B"
m[3] = "C"
?
m[1] = "J"
/********** 根据key 获取值 ***************/
value,ok:= m[key]
if ok{
fmt.Println(value)
}else{
fmt.Println("key不存在")
}
?
/*********** 字典删除 *******************/
delete(m,key) //如果key存在 删除数据 key不存在 程序继续执行
?
/********** map作为函数传递 **************/
//map作为函数参数是地址传递(引用传递) 形参可以改变实参的值
m := map[int]string{1001: "亚索", 1005: "盖伦", 1020: "劫", 1022: "蔡徐坤"}
?
//调用函数
test(m)
?
func test(m map[int]string) {
?
//查询数据
//fmt.Println(m)
//添加数据
//m[2333] = "赵信"
//修改信息
//m[1022] = "泰达米尔"
//删除
delete(m,1022)
?
fmt.Printf("被调函数:%p\n", m)
}
原文:https://www.cnblogs.com/muxinanan/p/14502069.html