Golang:将切片转换为地图

新手上路,请多包涵

在 Golang 中是否有一种简单的方法可以将切片转换为地图?就像在 perl 中将数组转换为散列很容易通过简单的赋值来完成,比如 %hash = @array 上面的代码会将数组中的所有元素转换为散列,键是偶数索引元素,而值是数组的奇数索引元素。

在我的 Go 代码中,我有字符串切片并想将其转换为映射。我想知道是否有 Go 的库代码可以执行此操作。

 func main() {
  var elements []string
  var elementMap map[string]string
  elements = []string{"abc", "def", "fgi", "adi"}
}

元素 slice 应转换为字符串映射 elementMap

谢谢

原文由 Nikhil Mulley 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 963
1 个回答

使用 for 循环:

 elements = []string{"abc", "def", "fgi", "adi"}
elementMap := make(map[string]string)
for i := 0; i < len(elements); i +=2 {
    elementMap[elements[i]] = elements[i+1]
}

操场上的可运行示例

标准库没有执行此操作的功能。

原文由 Cerise Limón 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题