Map的遍歷
package main
import (
? "fmt"
? "sort"
)
func main() {
? /*
? map的遍歷:
? ? 使用:for range
? ? ? 數(shù)組借尿,切片: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,-->切片/數(shù)組
? 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學習 數(shù)組上創(chuàng)建切片