1 map的基本使用
package main
import (
"fmt"
"sort"
)
func main() {
var map1 map[int]string
var map2 = make(map[int]string)
var map3 = map[string]int{"Go": 100, "Python": 98, "Java": 97}
fmt.Println(map1)
fmt.Println(map2)
fmt.Println(map3)
fmt.Println(map1 == nil)
fmt.Println(map2 == nil)
fmt.Println(map3 == nil)
if map1 == nil {
map1 = make(map[int]string)
}
map1[1] = "hello"
map1[2] = "么么哒"
fmt.Println(map1)
fmt.Println("map1[1]:", map1[1])
value, ok := map1[3]
if ok {
fmt.Println("对应的数值是:", value)
} else {
fmt.Println("key不存在,获取的是默认值", value)
}
fmt.Println(map1)
map1[1] = "哈喽"
fmt.Println(map1)
delete(map1, 1)
fmt.Println(map1)
fmt.Println(len(map1))
map1[3] = "value3"
map1[4] = "value4"
for k, v := range map1 {
fmt.Println(k, v)
}
keys := make([]int, 0, len(map1))
fmt.Println(keys)
for k, _ := range map1 {
keys = append(keys, k)
}
fmt.Println(keys)
sort.Ints(keys)
fmt.Println(keys)
for _, key := range keys{
fmt.Println(key, map1[key])
}
s1:=[]string{"Apple","Python","Perl","Java","java","C","Go"}
sort.Strings(s1)
fmt.Println(s1)
map4 := make(map[string]string)
map4["name"] = "菊子皮"
map4["age"] = "26"
map4["sex"] = "男性"
map4["address"] = "江苏南京"
fmt.Println(map4)
map5 := make(map[string]string)
map5["name"] = "菊小皮"
map5["age"] = "25"
map5["sex"] = "女性"
map5["address"] = "江苏南京"
fmt.Println(map5)
s2:= make([]map[string]string,0, 2)
s2 = append(s2, map4)
s2 = append(s2, map5)
for i, val:=range s2{
fmt.Printf("第%d个人的信息是:\n",i + 1)
fmt.Printf("\t姓名:%s\n", val["name"])
fmt.Printf("\t年龄:%s\n", val["age"])
fmt.Printf("\t性别:%s\n", val["sex"])
fmt.Printf("\t地址:%s\n", val["address"])
}
}