映射map

 

映射 就是python里的字典

 

 1 package main
 2 
 3 import "fmt"
 4 
 5 func main() {
 6 
 7     /*
 8     定义string为键 int为数值
 9     var xx map[string]int =map[string]int{}
10     var xx = map[string]int{}
11     xx := map[string]int{}
12      */
13 
14 
15 
16     //没有指定长度,默认长度为0
17     //a :=make(map[string]int,2)
18     a := make(map[string]int)
19 
20 
21 
22     //添加数据
23     a["aaa"] =1
24     a["bbb"] =2
25     a["ccc"] =3
26 
27 
28     //根据键访问值
29     fmt.Println("aaa的数字是",a["aaa"])  //aaa的数字是 1
30 
31 
32 
33     //修改数值
34     a["aaa"] =111
35     fmt.Println("aaa的数字是",a["aaa"])  //aaa的数字是 111
36 
37 
38 
39 
40 }

带有校验的键值

 1 package main
 2 
 3 import "fmt"
 4 
 5 func main() {
 6 
 7     a := make(map[string]int)
 8 
 9 
10 
11     //添加数据
12     a["aaa"] =1
13     a["bbb"] =2
14     a["ccc"] =3
15 
16     //如果查询一个不存在的,也不会报错。
17     fmt.Println("ddd的数字是",a["ddd"])  //ddd的数字是 0
18 
19 
20     //访问带有验证的键值 然后进行做判断01
21     aa,ok := a["aaa"]
22     if ok==true{
23         fmt.Println("aaa的数值是",aa)
24     } else {
25         fmt.Println("没有该值")
26     }
27 
28 
29     //校验数值,做逻辑判断02
30     if aaa,ok := a["ddd"];ok==true{
31         fmt.Println(aaa)
32     }else {
33         fmt.Println("没有")
34     }
35 
36 
37 
38     //遍历key和values 01
39     for key,value :=range a{
40         fmt.Printf("a[%s]=%d\n",key,value)
41     }
42 
43 
44     ///遍历key和values 02
45     for key := range a{
46         fmt.Println(key,a[key])
47     }
48 
49 }

猜你喜欢

转载自www.cnblogs.com/chaoyangxu/p/11859127.html