package main
import ( "fmt" )
func modifyUser(users map[string]map[string]string, name string) { if users[name] != nil { users[name]["pwd"] = "0000"
} else {
users[name] = make(map[string]string, 2)//不明白为什么要这样写
users[name]["pwd"] = "88888"
users[name]["nickname"] = "昵称" + name
}
} func main() { //:=是声明类型 users := make(map[string]map[string]string, 10) //users["smith"]已经知道是map类型了,所以直接make,类似:var a map ,a =make(map[string]string,2) users["smith"] = make(map[string]string, 2) users["smith"]["pwd"] = "00000" users["smith"]["nickname"] = "cat" modifyUser(users, "tom") modifyUser(users, "mary") modifyUser(users, "smith") fmt.Println(users)
}
/* 主要记录 不明白对于多重map为什么,users["smith"] = make(map[string]string, 2) //:=是声明类型 users := make(map[string]map[string]string, 10) //users["smith"]已经知道是map类型了,无需声明类型了,所以直接make,类似:var a map ,a =make(map[string]string,2) */