我需要以下形式的函数
List<Object> deserialize(String className, String jsonString){
}
此处的 jsonString 可以类似于以下内容,而 className 将类似于 com.example.mycontact
[{"name":"myName","mobile":"12344557899"},{"name":"myName","mobile":"12344557899"}]
现在如何使用 gson 将其转换为联系人列表。请注意,不需要在不同的调用中联系它。
最佳答案
终于找到解决办法了。
List<Object> deserialize(String className, String jsonString){
JsonParser parser = new JsonParser();
JsonArray jsonArray = (JsonArray) parser.parse(jsonString);
Iterator<JsonElement> iterator = jsonArray.iterator();
List<Object> list = new ArrayList<>();
while (iterator.hasNext()) {
list.add(gson.fromJson(iterator.next(), className));
}
return list;
}
如果您有更优雅的解决方案,请回答。
关于java - Gson 反序列化为 List<Object>,其中列表的通用类型作为类名给出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29272704/