golang 从接口获取值{}

我正在遍历从 couchDB.View 返回的结果并提取密钥。

for _, row := range rows {
        fmt.Printf("%v, %T\n", row.Key, row.Key)
    }

结果是:

[nh001 mgr], []interface {}
[nh002 nh], []interface {}

我需要通读这个界面并获得第二个值(“mgr”或“nh”)。

我无法对此进行迭代,因为这不是地图。


波斯汪
浏览 86回答 1
1回答

UYOU

我假设你的价值row.Key是从某个地方返回的interface{}?如果是,那么range rows您可以尝试将其强制转换为 type []interface{}。所以你的代码应该看起来像这样。for _, row := range rows {     if val, ok := row.Key.([]interface{}); ok {         fmt.Println(val[1])     } }
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go