基本操作都在以下代码里面啦
1 package main 2 3 import "fmt" 4 5 func main() { 6 // map key:value 7 // var 变量名 map[key]value 8 var a map[string]int 9 //var b map[int]string 10 //var c map[int]float64 11 //map也是引用地址 必须要先初始化 12 //map扩容性能会有消耗,所以最好提前预估一下容量 13 a = make(map[string]int,16) 14 fmt.Printf("a:%v ",a) 15 a["xxw"] = 1000 16 a["xxw1"] = 1024 17 a["xxw2"] = 2048 18 a["xxw3"] = 512 19 fmt.Println(a) 20 21 //也可以在声明的时候进行初始化 22 b := map[string]int{ 23 "beijing" : 10001, 24 "shanghai" : 10002, 25 } 26 fmt.Println(b) 27 b["beijing"] = 11111 28 b["guangzhou"] = 33333 29 b["shenzhen"] = 444444 30 fmt.Println(b) 31 32 //判断值是否存在 33 value, ok := b["wuhan"] 34 fmt.Println(value,ok) 35 //判断值是否存在 36 value, ok = b["beijing"] 37 fmt.Println(value,ok) 38 39 //map的遍历 40 for key,value1 := range a { 41 fmt.Printf("a[%s] = %d ",key,value1) 42 } 43 //删除元素 44 delete(a,"xxw") 45 fmt.Println("a删除后为:") 46 //map的遍历 47 for key,value1 := range a { 48 fmt.Printf("a[%s] = %d ",key,value1) 49 } 50 fmt.Println("map的长度len(a)=",len(a)) 51 }
运行结果如下:
a:map[] map[xxw:1000 xxw1:1024 xxw2:2048 xxw3:512] map[beijing:10001 shanghai:10002] map[beijing:11111 guangzhou:33333 shanghai:10002 shenzhen:444444] 0 false 11111 true a[xxw2] = 2048 a[xxw] = 1000 a[xxw1] = 1024 a[xxw3] = 512 删除后为: a[xxw1] = 1024 a[xxw3] = 512 a[xxw2] = 2048 map的长度len(a)= 3