Ich habe eine json Array vom Server response
:Convert json Array in eine Java-Liste Objekt
[{"id":1, "name":"John", "age": 20},{"id":3, "name":"Tomas", "age": 29}, {"id":12, "name":"Kate", "age": 32}, ...]
ich gson verwenden möchten, die oben json Daten an ein Java List<Person>
Objekt zu konvertieren. Ich habe versucht, die folgende Art und Weise:
Zum einen habe ich eine Person.java Klasse:
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;
}
}
Dann in meiner Dienstklasse, habe ich die folgenden:
//'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
}
Ich habe Ausnahme java.lang.ClassCastException: java.util.LinkedHashMap kann nicht in Person umgewandelt werden. Wie werde ich mein Problem los? Ich möchte nur das JSON-Array in ein List<Person>
Objekt konvertieren. Irgendeine Hilfe?