迭代通过golang地图

前端之家收集整理的这篇文章主要介绍了迭代通过golang地图前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个类型的地图:map [string] interface {}

最后,我得到创建的东西像(在反序列化后从yml文件使用goyaml)

mymap = map[foo:map[first: 1] boo: map[second: 2]]

如何迭代这个地图?我试过以下:

for k,v := range mymap{
...
}

但我得到一个错误

cannot range over mymap
typechecking loop involving for loop

请帮忙。

例如,
package main

import "fmt"

func main() {
    type Map1 map[string]interface{}
    type Map2 map[string]int
    m := Map1{"foo": Map2{"first": 1},"boo": Map2{"second": 2}}
    //m = map[foo:map[first: 1] boo: map[second: 2]]
    fmt.Println("m:",m)
    for k,v := range m {
        fmt.Println("k:",k,"v:",v)
    }
}

输出

m: map[boo:map[second:2] foo:map[first:1]]
k: boo v: map[second:2]
k: foo v: map[first:1]

猜你在找的Go相关文章