golang中的map
阿新 • • 發佈:2021-10-07
1. 宣告與初始化
// map的宣告與初始化 userInfo := map[string]string{"name": "馬亞南", "age": "18"} fmt.Println(userInfo) fmt.Println(userInfo["name"]) // 馬亞南 userInfo["age"] = "28" fmt.Println(userInfo) userInfo["email"] = "[email protected]" fmt.Println(userInfo) // 宣告 var userInfo2 = map[string]string{} userInfo2["age"] = "88" fmt.Println(userInfo2) // make建立map data := make(map[int]int) data[100] = 998 data[200] = 999 fmt.Println(data) // 只有宣告,nil ,無法設定 var row map[int]int // 這種宣告用於整體的賦值 //row["name"] = 666 // 錯誤的 row = data fmt.Println(row) // new建立map, nil // 這種宣告也是用於整體的賦值,但是賦值的是map的指標型別 value := new(map[int]int) value = &data fmt.Println(*value)
// 注意:鍵不重複、鍵必須可雜湊(int/bool/float/string/array),map是無序的
v1 := make(map[[2]int]float32) v1[[2]int{11, 22}] = 3.15 v1[[2]int{33, 44}] = 2.88 fmt.Println(v1)
2.