我有以下代码: func returnTheMap() map[string][]string{ myThing := getSomeValue() }getSomeValue() 返回某种类型的东西 map[string]interface{}但它始终在内部是一个map[string][]string.设置myThing等于相同getSomeValue()但类型的最佳方法是什么map[string][]string?我可以像这样制作一个新对象:newMap := make(map[string][]string)// cardTypeList is of type map[string]interface {}, must convert to map[string][]stringfor k, v := range myThing { newMap[k] = v.([]string)}但是有什么方法可以就地执行此操作,还是有任何首选方法可以执行此操作?
2 回答
呼啦一阵风
TA贡献1802条经验 获得超6个赞
你getSomeValue()
的功能是?如果是这样,我会将返回类型更改为map[string][]string
而不是map[string][]interface
.
如果不是这种情况,我会创建一些帮助程序进行检查以确保类型设置符合您的需求。我在操场上有一个例子
https://play.golang.org/p/9OPgXGXADY
- 2 回答
- 0 关注
- 148 浏览
添加回答
举报
0/150
提交
取消