我需要调用一个方法,它只是用来反序列化一个json字符串,函数是这样的:
NSDecimalNumber
从它的外观来看,我知道这意味着这个json字符串可以被反序列化为 public <V extends Map<String,List<M>>,M> Object deserializeMap(String json, Class<Map> class1, Class<List> class2)
或Map
而且,我知道,这个List<Object>
表示每个json项目是一个名为Object
的类,但如何构建这两个参数只会让我困惑。任何人都可以帮助我?
答案 0 :(得分:0)
根据方法签名和你的解释,我猜你应该传递具体的类,这些类将用于实例化生成的Map
和List
。在这种情况下,方法签名看起来很奇怪。请注意,根本不使用泛型参数。如果您可以更改方法签名,可能最好像这样定义它:
public Object deserializeMap(String json, Class<? extends Map> class1,
Class<? extends List> class2) {
...
}
并像这样使用:
deserializeMap(jsonString, HashMap.class, ArrayList.class);