Java 将JSON数组更改为pojo对象数组

Java 将JSON数组更改为pojo对象数组,java,android,gson,Java,Android,Gson,我得到了以下格式的API响应。我正在从事Android项目 { Course: [ { "Year": 2017, "CourseTitle": "..", "Quarter": "autumn", }, {

我得到了以下格式的API响应。我正在从事Android项目

    {
               Course: [
                  {
                    "Year": 2017,
                    "CourseTitle": "..",
                    "Quarter": "autumn",
                    },
                 {
                     "Year": 2017,
                    "CourseTitle": "..",
                    "Quarter": "autumn",
                 }

                ],

                Instructor: {

                 "name": ,
                 "address": 
                }  
   }
我的目标是获取课程数组,并将其分配给我使用创建的POJO(普通旧java对象)。我也在使用GSON库。我确实在网上找到了不同的实现,我最终使用了它,并且我能够过滤嵌套对象“Courses”,它包含一个Courses数组对象

JsonParser parser = new JsonParser();
JsonObject element = (JsonObject)parser.parse(response);
JsonElement responseWrapper = element.getAsJsonArray("Courses");
当我使用调试器工具查看responseWrapper时,它当然包含一个JSON数组(对象)。我想将这些数据分配给我创建的“课程”POJO类

公共课课程实行可随身携带{

private String href;
private int year;
private String courseTitle;
private String quarter;
private String courseTitleLong;
private String curriculumAbbreviation;
private String courseNumber;
}

我添加了以下行

Course[] courseList = gson.fromJson(responseWrapper,Course[].class);

CourseList是一个Course对象数组,但当我查看使用调试器工具得到的结果时,所有字段变量都是“null”。我怎样才能解决这个问题?我有没有更好的办法?整个目的是获取course对象数组,以便我可以操作它进行显示。

尝试重命名字段,使其与json响应完全匹配,即使是按大小写。

问题已解决。我的问题是我正在使用自动生成的pojo类。如果查看成员变量,则名称与我从api获得的名称不匹配。例如,在API上,键是“CourseTile”,在我的pojo类中,我将其命名为“CourseTile”。对于所有成员变量都是如此。昨天,花了我一个小时左右的时间,我终于睡着了,早上醒来,我发现了问题。我学到的教训是,如果你坚持做一些事情,就把它放在一边或者休息一下。谢谢你最初的回复,但是你编辑了你的回复。现在,你写的和我在评论中说的一样。也许你没看。你最初的反应是使用ListOh好的!是的,如果你注意到我在编辑后添加了3种可能性。1) 列表2)使用列表创建对象,第3个是字段的命名。在尝试了前两个之后,我再次改变了它,并意识到它没有什么不同。祝你好运!