-
初始化map
// 第一种声明方式 var user_profile = map[string]string{ "name":"wuxiaoshi", "address":"北京市朝阳区" } // 也可以这样声明,只是变量声明的一种简洁方式 user_profile1 := map[string]string{ "qq": "1045216729" }
// 第二种声明方式 user_profile3 := make(map[string]string) user_profile3["emai"] = "imock@sina.com"
-
添加键值对
user_profile3 := make(map[string]string) user_profile3["emai"] = "imock@sina.com"
-
删除键值对
// 没有返回值 delete(user_profile,"name")
-
清空map
// 只有将变量重新赋值一个空的map var user_profile = map[string]string
-
判断键是否存在
// 判断map中有没有 avatar 字段 if avatar,exists := user_profile["avatar"];exists{ fmt.Printf("avatar字段存在,值为:%s",avatar) }else{ fmt.Println("avatar字段不存在!") }
-
map遍历
// 获取map的键和值 for key,val := range user_profile{ fmt.Printf("key:%s, val:%s ",key,val) }
// 获取键的方式 for key := range user_profile{ fmt.Println(key) } // 如果不嫌麻烦的话,也可以这样 for key,_ := range user_profile{ fmt.Println(key) }
// 获取值 for _,val := range user_profile{ fmt.Println(val) }