Go语言学习笔记十五--Go语言map的基本操作

基本操作都在以下代码里面啦

 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
原文地址:https://www.cnblogs.com/xwxz/p/13323548.html