通过接口调用或者配置文件,我们拿到了为json形式的字符串;其中已数组形式保存了同一类型的多个对象;
我们要将其转换为Llst形式的java对象集合;
直接上代码:
首先是要保存的数据对象;
@Data //该注解提供get/set方法,lombok插件 public class PlatformModel { private String id; private String name; private String platcode; }要转换的json字符串:
String platform=
"[
{"id": "0","name": "津贵所","platcode": "tjpme"},
{"id": "1",name: "齐鲁商品","platcode": "qiluce"},
{"id": "2",name: "广交所","platcode": "sxbrme"},
{"id": "3",name: "一带一路","platcode": "gdpmec"}
]";
下面以转换为HashMap为例子来说明转换;
首先定义存储集合的HashMap;
//其中key为id,值为对象自己
private Map<String,PlatformModel> platformMap=new HashMap<>();
其次是转换方法:
private void getPlatformMap(){ JSONArray platformList = JSON.parseArray(platforms); for (Object jsonObject : platformList ) { PlatformModel platformModel = JSONObject.parseObject(jsonObject.toString(), PlatformModel.class); platformMap.put(platformModel.getId(), platformModel); } };执行上述方法即可转换字符窜为java对象集合;如果不想要HashMap,而是要ArrayList集合来存储;则定义存储集合的ArrayList;privateArrayList<PlatformModel> platformList=new ArrayList<>();private void getPlatformList(){ JSONArray platformList = JSON.parseArray(platforms); for (Object jsonObject : platformList ) { PlatformModel platformModel = JSONObject.parseObject(jsonObject.toString(), PlatformModel.class); platformList.put(platformModel); } }大功告成;如此就转换结束了。