java.lang.ClassCastException: com.google.gson.internal.LinkedTreeMap cannot be cast to xxxxxx
原因在于转换普通String字符串到List列表对象时候,解决方法可以用下面的转换方法:
/** * 把一个json的字符串转换成为一个包含POJO对象的List * * @param string * @param cls * @param <T> * @return */ public static <T> List<T> jsonStringConvertToList(String string, Class<T[]> cls) { Gson gson = new Gson(); T[] array = gson.fromJson(string, cls); return Arrays.asList(array); }
比如自己的一个Java对象MyPOJO.class,那么该方法为:
jsonStringConvertToList(string,MyPOJO[].class);