首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >2D切片的字符串

2D切片的字符串
EN

Stack Overflow用户
提问于 2018-05-31 17:09:49
回答 1查看 86关注 0票数 -1

我从Redis商店收到一个字符串形式的2D数组:

func main() {
    client := setRedisClient()
    data, err := client.Get(redisKey).Result()
    // store data as a 2D slice
}

以下是数据可能的样子的示例:

[["a", "b"], ["c", "d"], ["e", "f"]]

理想情况下,我希望能够使用2D切片,因为我需要能够使用索引:

dataAsSlice := [][]string {{"a", "b"}, {"c", "d"}, {"e", "f"}} 
fmt.Println(dataAsSlice[0][0]) => "a"

我还没有找到一种方法来解析来自redis的响应,并将其存储为2D切片。

我怎样才能做到这一点呢?甚至存储为2D切片是最好的方式吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-05-31 17:20:54

因为您的字符串是JSON,所以可以使用json.Unmarshal将其转换为[][]string{},如下所示:

str := `[["a", "b"], ["c", "d"], ["e", "f"]]`
var dataAsSlice [][]string
err := json.Unmarshal([]byte(str), &dataAsSlice)

你可以在Go Playground上看到这一点:https://play.golang.org/p/NEpIKc9Fl-s

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50620614

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档