I would like to parse JSON string with nested array to POJO with Gson but it seems that it does not work.
My JSON string is as follow:
{
"magdeburg":{
"average":"21.40",
"maximum":"22.33",
"minimum":"19.06"
},
"frankfurt":{
"average":"16.41",
"maximum":"16.57",
"minimum":"16.09"
}
}
with my POJO class as follow:
public class PingResult {
public double average;
public double maximum;
public double minimum;
public PingResult(double average, double maximum, double minimum) {
this.average= average;
this.maximum = maximum;
this.minimum= minimum;
}
public String toString() {
return "average:" + this.average + ",maximum:"+this.maximum+",minimum:"+this.minimum;
}
}
but when I want to parse it to POJO with the code like this:
List<PingResult> pr = (List<PingResult>) gson.fromJson(q, PingResult.class);
for(PingResult p:pr) {
System.out.println(p.toString());
}
it gave error of
java.lang.ClassCastException: PingResult cannot be cast to java.util.List at DelayBasedMeasurement.main(DelayBasedMeasurement.java:380).
I have tried to parse to PingResult[] but still it does not work.
Any advice?