假设我有一个JSON,如:
{
"assignments": [
{
'id': '111',
'activities': [
{
'activity': 'Activity 1',
},
{
'activity': 'Activity 2'
}
]
},
{
'id': '2222',
'Activities': [
{
'activity': 'Activity 1'
}
]
}
]
}
我正在使用GSON来解析它。我有一个正确设置Javabean并可以毫无问题地访问id。我如何获得每个id / object的活动?
编辑:更多代码:
public class Assignment {
private String id;
public String getId() {
return id;
}
}
Gson mGson= new Gson();
assignmentList=mGson.fromJson(json, AssignmentList.class);
assignmentList.getAssignments().get(0).getId());
答案 0 :(得分:4)
我为活动创建了另一个Bean,因为它本身就是一个JSON对象。
class Assignment {
private String id;
private List<Activity> activities; //getters and setters for this.
public String getId() {
return id;
}
}
class Activity {
private String activity; //Getters and setters
}
Gson mGson= new Gson();
assignmentList=mGson.fromJson(json, AssignmentList.class);
assignmentList.getAssignments().get(0).getActivities.get(1);
答案 1 :(得分:0)
如果类中只有原始类型,只需定义两个Java类就足够了,只要确保不从GenericJson继承该类,它就会破坏Gson解析器的递归操作。