我试图用 JSON 表示一些数据,其中有一个事物列表,其中每个事物都有一些共同的特征(例如名称),另一个字段的值可以是字符串或整数。例如:
{
"items": [
{
"name": "thing1",
"type": "string",
"value": "foo"
},
{
"name": "thing2",
"type": "int",
"value": 42
}
]
}
该 JSON 对我来说看起来很合理,但事实证明,尝试创建一个数据结构以在 Golang 中将其反序列化(解组)为困难。我想我可以用类多态性在 Java 中做到这一点,但在 Go 中我觉得被困住了。我已经尝试了很多东西,但还没有得到它。最终,它归结为缺乏结构类型多态性。
在 Go 中,我可以有一个接口切片(列表),但据我所知,我需要不同类型的实际结构。
关于如何在 Golang 中表示它并能够解组的任何建议?
或者,我应该以不同的方式构建 JSON 本身吗?
芜湖不芜
九州编程
三国纷争
相关分类