arrays - 将非 slice 附加到 slice 图

标签 arrays dictionary go slice

我目前的代码是这样的:

name := "John"
id := "1234"
c := make(map[string][]string)

c["d"] = make([]string, len(d))
c["l"] = make([]string, len(l))

copy(c["d"], d)
copy(c["l"], l)
c["test"] = name
c["id"] = id

假设 d & l 都是 []string。 Go 不允许我这样做。有没有一种方法可以实现这样的 JSON:

{ “名字”:“约翰”, “编号”:“1234”, “d”:[ 123、 456 ], “我”:[ 123、 456 ]

最佳答案

  1. 您需要改用 map[string]interface{}
  2. 您也不需要复制您的 slice 。

map[string]interface{} 示例:

name := "John"
id := "1234"
l, d := []string{"123", "456"}, []string{"789", "987"}
c := map[string]interface{}{
    "d":    d,
    "l":    l,
    "test": name,
    "id":   id,
}

playground

关于arrays - 将非 slice 附加到 slice 图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32040488/

相关文章:

encryption - 预定过程 - 为加密配置提供 key

http - Golang - 检查错误和推迟操作的正确顺序是什么?

python - 递归数组的每个元素

python - Numpy 2D Array - Power Of - 不返回答案?

c++ - 在不创建新节点的情况下使用 map 实现 trie

swift - 无法使用 '[Any]' 类型的索引为 'String' 类型的值添加下标

algorithm - wordweb英语词典是如何实现的?

javascript - 如何在数组中的数组的第二个值之后排序?

javascript - 如何在 JS 中将矩形设置为对象进行数组?

Golang 在测试中使用 Null*s