13
我正在使用GSON 1.4並使用兩個通用arraylist<myObject>
序列化一個對象,如下所示 String data = Gson.toJson(object, object.class)
。當我desirialize是我做的gson.fromJson(json, type);
使用gson反序列化泛型
可悲的是,我得到
java.lang.IllegalArgumentException異常:無法設置的java.util.ArrayList 場......到java.util.LinkedList中
這是爲什麼? GSON doc指出,如果我使用object.class參數序列化,它支持泛型。任何想法?謝謝。
我的課是:
public class IndicesAndWeightsParams {
public List<IndexParams> indicesParams;
public List<WeightParams> weightsParams;
public IndicesAndWeightsParams() {
indicesParams = new ArrayList<IndexParams>();
weightsParams = new ArrayList<WeightParams>();
}
public IndicesAndWeightsParams(ArrayList<IndexParams> indicesParams, ArrayList<WeightParams> weightsParams) {
this.indicesParams = indicesParams;
this.weightsParams = weightsParams;
}
}
public class IndexParams {
public IndexParams() {
}
public IndexParams(String key, float value, String name) {
this.key = key;
this.value = value;
this.name = name;
}
public String key;
public float value;
public String name;
}
嗨,感謝您的幫助。我的對象不是通用的,而是包含兩個數組列表。我應該如何使用這種類型?(){} getTrype不工作:-( –
Jeb
2010-12-06 09:31:51
類型類型=新TypeToken