• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    Go 容器遍历的实现示例

    前文回顾

    前面的文章主要介绍了 Go 语言中提供了 list 列表和 Map 映射关系容器,这两种容器都是我们日常经常使用到的。介绍了好多种的 Go 语言提供的基础容器,免不了要查询容器中的数据,那么是如何实现遍历的呢?本文将会介绍几种常用容易的遍历及其使用。

    容器遍历

    Go 语言中 range 关键字用于 for 循环中迭代数组(array)、切片(slice)、通道(channel)或集合(map)的元素。在数组和切片中它返回元素的索引和索引对应的值,在集合中返回 key-value 对。
    遍历对于很多 Golang 的内置容器来说,形式都是基本一致的,主要通过 for-range 语法,我们将通过以下的例子分别展示数组、切片和字典的遍历过程,代码如下所示:

    package main
    
    import "fmt"
    
    func main()  {
    
     // 数组的遍历
     nums := [...]int{1,2,3,4,5,6,7,8}
     for k, v:= range nums{
      // k 为下标,v 为对应的值
      fmt.Println(k, v, " ")
     }
    
     fmt.Println()
    
     // 切片的遍历
     slis := []int{1,2,3,4,5,6,7,8}
     for k, v:= range slis{
      // k 为下标,v 为对应的值
      fmt.Println(k, v, " ")
     }
    
     fmt.Println()
    
     // 字典的遍历
     tmpMap := map[int]string{
      0 : "小明",
      1 : "小红",
      2 : "小张",
     }
    
     for k, v:= range tmpMap{
      // k 为键值,v 为对应值
      fmt.Println(k, v, " ")
     }
    }

    通过 for-range 可以对数组、切片和字典以同样的方式进行遍历。如果仅需要遍历值,可以将不需要的键改为匿名变量形式,如下所示:

    for _, v := range nums {

    仅遍历键时,可以直接省略掉无用值的赋值。在 for-range 遍历的过程中,因为键和值都是通过拷贝的方式进行赋值,对它们进行修改并不会影响到容器内成员的变化,这点需要我们在实际开发中多加注意。

    小结

    本文主要介绍了容器的遍历。go 语言中主要通过 for-range 语法,文中实际的案例分别展示了数组、切片和字典的遍历过程。
    在数组上使用 range 将传入 index 和值两个变量。当我们不需要使用该元素的序号,可以使用空白符"_"省略了。不过有些场景可能确实需要知道它的索引。 

    到此这篇关于Go 容器遍历的实现示例的文章就介绍到这了,更多相关Go 容器遍历内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家! 

    您可能感兴趣的文章:
    • Django继承自带user表并重写的例子
    • Go语言中nil判断引起的问题详析
    • 分析Go语言中CSP并发模型与Goroutine的基本使用
    • Go遍历struct,map,slice的实现
    • Golang的继承模拟实例
    上一篇:go web 预防跨站脚本的实现方式
    下一篇:Go遍历struct,map,slice的实现
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    Go 容器遍历的实现示例 容器,遍历,的,实现,示例,