【发布时间】:2022-01-10 19:19:02
【问题描述】:
我正在尝试从 JSON 响应反序列化嵌套数组。这是我第一次得到一个数组数组,我不太清楚如何构造我的类来处理它。
{
"prices": [
[
1641670404234,
0.01582586939240936
],
[
1641674037525,
0.015999047707867396
],
[
1641677655158,
0.016072905257982606
]
...
],
}
如果括号是{ 而不是[
{
"prices": {
{
1641670404234,
0.01582586939240936
},
{
1641674037525,
0.015999047707867396
},
{
1641677655158,
0.016072905257982606
}
}
...
}
我可以使用
@SerializedName("prices")
private List<Price> prices;
public class Price {
private long date;
private BigDecimal price;
}
但是,因为它是 [,所以我很不确定如何构造它。
我尝试向其中添加另一个 List 包装器,但这会引发错误
@SerializedName("prices")
private List<List<Price>> prices;
IllegalStateException: Expected BEGIN_OBJECT but was NUMBER at line 1 column 26 path $.prices[0][0]
我也试过用 JSONArray 包装它
@SerializedName("prices")
private List<JSONArray<Price>> prices;
但这不太对
我已尝试搜索其他 SO 答案,但找不到任何连续两个 [ [ 括号的示例。
他们都是{ [或[ {。
正确的做法是什么?
【问题讨论】:
标签: java android json kotlin gson