我有以下 Json String 片段:
{
"networks": {
"tech11": {
"id": "1",
"name": "IDEN"
},
"tech12": {
"id": "2",
"name": "EVDO_B"
}
}
}
我使用一些方法将此字符串转换为对象:
private static Gson mGson = new Gson();
...
public static WebObjectResponse convertJsonToObject(String jsonString) {
WebObjectResponse webObjectResponse = null;
if(jsonString != null && jsonString.length() > 1){
webObjectResponse = mGson.fromJson(jsonString, WebObjectResponse.class);
}
return webObjectResponse;
}
WebObjectResponse
应该代表上述字符串的类在哪里。
如果我得到静态字段,它并不复杂。但在我的情况下,这些值有不同的名称:tech11
, tech12
....
我可以使用@SerializedName
,但它在特定情况下有效,例如将“class”转换为“class_”。如您所见networks
,对象定义为tech
对象列表,但具有不同的后缀。
public class WebObjectResponse{
private DataInfoList networks = null;
}
这是静态实现,我定义了 2 个值tech11
,tech12
但下一个响应可能是techXX
public class DataInfoList {
private DataInfo tech11 = null;
private DataInfo tech12 = null;
}
public class DataInfo {
private String id = null;
private String name = null;
}
将当前 Json String 转换为 Object 的好方法是什么,其中元素列表也是 Objects 并且具有不同的名称?
谢谢你。