58_Go基础_1_25 map数据类型
1 package main 2 3 import "fmt" 4 5 func main() { 6 /* 7 一:数据类型: 8 基本数据类型:int,float,string,bool 9 复合数据类型:array,slice,map,function,pointer,struct。。。 10 11 array:[size]数据类型 12 slice:[]数据类型 13 map:map[key的类型]value的类型 14 15 二:存储特点: 16 值类型:int,float,string,bool,array,struct 17 引用类型:slice,map 18 make(),slice,map,chan 19 20 */ 21 22 map1 := make(map[int]string) 23 map2 := make(map[string]float64) 24 fmt.Printf("%T\n", map1) // map[int]string 25 fmt.Printf("%T\n", map2) // map[string]float64 26 27 map3 := make(map[string]map[string]string) // map[string]map[string]string 28 m1 := make(map[string]string) 29 m1["name"] = "王二狗" 30 m1["age"] = "30" 31 m1["salary"] = "3000" 32 map3["hr"] = m1 33 m2 := make(map[string]string) 34 m2["name"] = "ruby" 35 m2["age"] = "28" 36 m2["salary"] = "8000" 37 map3["总经理"] = m2 38 fmt.Println(map3) // map[hr:map[age:30 name:王二狗 salary:3000] 总经理:map[age:28 name:ruby salary:8000]] 39 40 fmt.Println("---------------") 41 42 map4 := make(map[string]string) 43 map4["王二狗"] = "矮矬穷" 44 map4["李小花"] = "白富美" 45 map4["ruby"] = "住在隔壁" 46 47 fmt.Println(map4) // map[ruby:住在隔壁 李小花:白富美 王二狗:矮矬穷] 48 49 map5 := map4 50 fmt.Println(map5) // map[ruby:住在隔壁 李小花:白富美 王二狗:矮矬穷] 51 52 map5["王二狗"] = "高富帅" 53 fmt.Println(map4) // map[ruby:住在隔壁 李小花:白富美 王二狗:高富帅] 54 fmt.Println(map5) // map[ruby:住在隔壁 李小花:白富美 王二狗:高富帅] 55 56 }