gpt4 book ai didi

java - 使用Gson反序列化另一个对象内的对象数组

转载 作者:太空狗 更新时间:2023-10-29 15:41:12 24 4
gpt4 key购买 nike

在我的 Android 项目中使用 Volley,我得到了一个 json 响应,例如:

{
"value1": 1,
"value2": aaa,
"subvalues": [
{
"value1": 297,
"value2": 310,
"class3": {
"name": "name1",
"id": 1,
"value": 32
}
},
...
]
}

我需要使用 Gson 将它反序列化为 pojo。类是:

类1:

public class class1 {
private int value1;
private String value2;
private List<class2> vals;

public class class2 {
private int value1;
private int value2;
private class3 c3;
}
}

类3:

public class class3 {
private String name;
private int id;
private int value;
}

调用后

Gson g = new Gson();
class1 c1 = g.fromJson(jsonString, class1.class);

我只填充了 class1value1value2。列表始终保持 null。我该如何解决这个问题?

最佳答案

你需要改变:

private List<class2> vals;

到:

private List<class2> subvalues;

如果您想保留 vals 字段的原始名称,您可以使用 SerializedName注释:

public class class1 {
private int value1;
private String value2;

@SerializedName("subvalues")
private List<class2> vals;

...
}

Here您可以找到更多信息。

关于java - 使用Gson反序列化另一个对象内的对象数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29877979/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com