Map的遍历
package main
import (
"fmt"
"sort"
)
func main() {
/*
map的遍历:
使用:for range
数组,切片:index,value
map:key,value
*/
map1 :=make(map[int]string)
map1[2] = "猪八戒"
map1[3] = "沙僧"
map1[1] = "孙悟空"
map1[4] = "白龙马"
map1[5] = "牛魔王"
map1[6] = "铁扇公主"
//1.遍历
for k,v :=range map1{
fmt.Println(k,v)
}
fmt.Println("___________________")
for i :=1;i<=len(map1);i++{
fmt.Println(i,"-->",map1[i])
}
/*
1.获取所有的key,-->切片/数组
2.进行排序
3.遍历key,-->map[key]
*/
keys :=make([]int,0,len(map1))
fmt.Println(keys)
for k,_ := range map1{
keys = append(keys,k)
}
fmt.Println(keys)
//冒泡排序,或者使用sort包下的排序方法
sort.Ints(keys)
fmt.Println(keys)
for _,key := range keys{
fmt.Println(key,map1[key])
}
s1 :=[]string{"Apple","Windows","Orange","abc","红孩儿","acd"}
fmt.Println(s1)
sort.Strings(s1)
fmt.Println(s1)
}
运行输出:
4 白龙马
5 牛魔王
6 铁扇公主
2 猪八戒
3 沙僧
1 孙悟空
___________________
1 --> 孙悟空
2 --> 猪八戒
3 --> 沙僧
4 --> 白龙马
5 --> 牛魔王
6 --> 铁扇公主
[]
[3 1 4 5 6 2]
[1 2 3 4 5 6]
1 孙悟空
2 猪八戒
3 沙僧
4 白龙马
5 牛魔王
6 铁扇公主
[Apple Windows Orange abc 红孩儿 acd]
[Apple Orange Windows abc acd 红孩儿]
Process finished with exit code 0
读完点个赞,给我的坚持更新注入新的活力。
2022.05.22日更 74/365 天
公众号:3天时间
往期同类文章:
GO学习 Map的使用
GO学习 深拷贝和浅拷贝
GO学习 数组上创建切片
网友评论