map類型是引用類型,必須初始化才能使用,為key-value形式
var userinfo = make(map[string]string)userinfo["username"] = "zhangsan"var user = map[string]string{"username": "張三","age": "20",}for k, v := range user {fmt.Printf("%v %v\n", k, v)}
初始化方式可以通過make方法,遍歷通過range
v, ok := user["username"]fmt.Println(v, ok)
此為查找map中key對應的值是否存在,存在ok返回true,v返回對應的值,否決ok返回false,v返回空
刪除用delete函數()
delete(user, "username")
map類型的切片
var userinfo = make([]map[string]string, 2, 2)if userinfo[0] == nil {userinfo[0] = make(map[string]string)userinfo[0]["username"] = "張三"userinfo[0]["age"] = "20"}if userinfo[1] == nil {userinfo[1] = make(map[string]string)userinfo[1]["username"] = "張si"userinfo[1]["age"] = "209"}fmt.Println(userinfo)
map類型的值可以是切片
var userinfo = make(map[string][]string)userinfo["hobby"] = []string{"吃飯","睡覺",}fmt.Println(userinfo)