如何使用GSON解析具有INNER泛型类型的类?

时间:2015-07-04 15:59:37

标签: generics gson

我用google搜索gson和泛型类型,所有的例子都是关于List< T>。

如果泛型类型在类中怎么办? e.g:

public class SAMPLE<T> {
    private int fixedHeader1;
    private String fixedHeader2;
    private List<T> data;
}

那么如何使用GSON反序列化这个类呢?

THX〜

1 个答案:

答案 0 :(得分:0)

应该是:

Sample<String> sampleWithStringListInside = new Gson().fromJson(jsonString, new TypeToken<Sample<String>>(){}.getType());

也就是说,它就像使用Gson反序列化通用List s(或其他通用Collection s)一样。通过将Sample的泛型类型设置为T,您还可以设置包含List的泛型类型 - 这是Gson需要知道的全部内容。