我将 Retrofit 2 与 Gson 和 RxJava 结合使用。我的 JSON 数据看起来像这样:
{
"groups": {
"1": {
"name": "First group",
"type": "some data",
// ... more data
},
"2": {
"name": "Second group",
"type": "some data",
// ... more data
},
"3": {
"name": "Third group",
"type": "some data",
// ... more data
}
// 4, 5, 6, etc...
},
// ... more data
}
在上面的示例中,“键”1、2、3 是整数,但它们也可以是唯一的字符串。我想将此 JSON 数据映射为如下所示:
public class MyData {
@SerializedName("groups")
private Map<String, Group> mGroups;
// ... more data
}
public class Group {
// TODO: This should be "1", "2", "3", etc.
@SerializedName(???)
private String mId;
// This should be "First group", "Second group", "Third group", etc.
@SerializedName("name")
private String mName;
// This should be "some data"
@SerializedName("type")
private String mType;
// ... more data
}
将动态密钥 (1, 2, 3) 放在Group
对象也是如此?我自己不托管 JSON 数据,因此无法将其更改为其他格式。