如何在 Gson 中使用通用 类
How to use generic classes with Gson
我试着做这样的事情:
Poperty<Integer> prop;
JsonObject jsonObject = (JsonObject) parser.parse(string);
if(jsonObject.get("type").equals("Integer")){
prop = gson.fromJson(jsonObject, Property<Integer>.class);
}
else if{...}
问题如下:Property<Integer>.class
。
是否有可能以某种方式传递通用 .class
?
是的,将 Property<Integer>.class
替换为 new TypeToken<Property<Integer>>(){}.getType()
。
就像反序列化 List<Integer>
时所做的那样。
我试着做这样的事情:
Poperty<Integer> prop;
JsonObject jsonObject = (JsonObject) parser.parse(string);
if(jsonObject.get("type").equals("Integer")){
prop = gson.fromJson(jsonObject, Property<Integer>.class);
}
else if{...}
问题如下:Property<Integer>.class
。
是否有可能以某种方式传递通用 .class
?
是的,将 Property<Integer>.class
替换为 new TypeToken<Property<Integer>>(){}.getType()
。
就像反序列化 List<Integer>
时所做的那样。