Go遍历struct,map,slice


当前第2页 返回上一页

BASIC

切片索引 0 is :Php
切片索引 1 is :Go切片索引 2 is :Python3

遍历Map

package main

import (   "fmt")

func main() {
   language := make(map[string]string)
   language["1"] = "Php"
   language["2"] = "Go"
   language["3"] = "Python3"
   language["4"] = "C#"

   for key, val := range language {
      fmt.Printf("%v=>%v\n", key, val)
   }
}

输出:这里就不贴了,结果会随机输出,因为map遍历出来结果是无序的,顺序不好控制,也不利于业务逻辑;当业务依赖key次序时,那么我们就需要引入“sort”包来解决随机化问题:
比如这样:

package main

import (   "fmt"
   "sort")

func main() {
   language := make(map[string]string)
   language["1"] = "Php"
   language["2"] = "Go"
   language["3"] = "Python3"
   language["4"] = "C#"

   sorted_keys := make([]string, 0)   for k, _ := range language {
      sorted_keys = append(sorted_keys, k) // 提取键名   }
   sort.Strings(sorted_keys) //
   for _, k := range sorted_keys {
      fmt.Printf("%v=>%v\n", k, language[k])
   }
}

输出:

BASIC

1=>Php2=>Go3=>Python34=>C#

这样输出的结果运行多次也不会改变顺序。


本文来自:51CTO博客

感谢作者:mb600beb5e8f23b

查看原文:Go遍历struct,map,slice

返回前面的内容

相关阅读 >>

Golana语言社区】window应该开发之--cmd杀进程

Go 大数据生态迎来重要产品 cds

etcd包导入坑

Golang入门二:常量

详解Golang string和[]byte的对比

Go-carbon 1.3.1 版本发布,新增 diffforhumans() 方法和多语言支持

Golang 创建型设计模式 建造者模式

Golang怎么通过cGo调用c++程序

Golang chan是否关闭

Go语言 defer详解

更多相关阅读请进入《Go》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...

    正在狠努力加载,请稍候...