GO学习 Map的遍历

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学习 数组上创建切片

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容