问题描述:
在做String转换JSON时,我需要转换成List<Map<String, String>> 的形式:
List<Map<String, String>> list = JSON.parseObject(detail.getResult(), List.class);
这样是可以成功的,但是我取到值时发现不对,内容变得顺序没有对应了。我网上查了一下,发现HashMap在取值时是无序的,并不是按存入的顺序来取,于是我将map改为LinkedHashMap,json转换写成如下方式:
List<LinkedHashMap<String, String>> list = JSON.parseObject(detail.getResult(), List.class);
触发事件报错
查阅网上资料发现,使用JSON工具转换时,需要让List/Map识别自己的Object
引用到TypeReference写法
List<LinkedHashMap<String, String>> list = JSON.parseObject(detail.getResult(), new TypeReference<List<LinkedHashMap<String, String>>>() {});
问题解决