10
我得到了一个JSON数组从服务器response
:转换JSON数组Java列表对象
[{"id":1, "name":"John", "age": 20},{"id":3, "name":"Tomas", "age": 29}, {"id":12, "name":"Kate", "age": 32}, ...]
我想用gson上述JSON数据转换为一个Java对象List<Person>
。我尝试以下方法:
首先,我创建了一个Person.java类:
public class Person{
private long id;
private String name;
private int age;
public long getId(){
return id;
}
public String getName(){
return name;
}
public int getAge(){
return age;
}
}
然后,在我的服务类,我做了以下内容:
//'response' is the above json array
List<Person> personList = gson.fromJson(response, List.class);
for(int i=0; i<personList.size(); i++){
Person p = personList.get(i); //java.lang.ClassCastException: java.util.LinkedHashMap cannot be cast to Person
}
我异常java.lang.ClassCastException:java.util.LinkedHashMap不能转换为Person。如何摆脱我的问题?我只是想将json数组转换为List<Person>
对象。任何帮助?