以下操作都在Test2类 中编写
package core.util;
import java.text.DecimalFormat;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
public class Test2 {
public static void main(String[] args) {
List dataList =new ArrayList();//存放所有数据
String jsonStr1 = "{\"resultCode\" : 0,\"result\" : [ {\"orgId\" : null,\"categoryId\" : \"333f1328e6c6a7f3c2c7\",\"categoryName\" : \"北京分公司\",\"workOrderCount\" : null,\"planCounter\" : 15,\"actualCounter\" : 6,\"rank\" : null}, {\"orgId\" : null,\"categoryId\" : \"fc1bb1880968e77b5020\",\"categoryName\" : \"上海分公司\",\"workOrderCount\" : null,\"planCounter\" : 22,\"actualCounter\" : 13,\"rank\" : null}],\"msgId\" : \"fb971668\",\"success\" : true}";
String jsonStr2 = "{\"resultCode\" : 0,\"result\" : [ {\"orgId\" : null,\"categoryId\" : \"333f1328e6c6a7f3c2c7\",\"categoryName\" : \"北京分公司\",\"workOrderCount\" : null,\"planCounter\" : 25,\"actualCounter\" : 5,\"rank\" : null}, {\"orgId\" : null,\"categoryId\" : \"fc1bb1880968e77b5020\",\"categoryName\" : \"上海分公司\",\"workOrderCount\" : null,\"planCounter\" : 36,\"actualCounter\" : 6,\"rank\" : null}],\"msgId\" : \"5225121a\",\"success\" : true}";
String jsonStr3 = "{\"resultCode\" : 0,\"result\" : [ {\"orgId\" : null,\"categoryId\" : \"333f1328e6c6a7f3c2c7\",\"categoryName\" : \"北京分公司\",\"workOrderCount\" : null,\"planCounter\" : 25,\"actualCounter\" : 8,\"rank\" : null}, {\"orgId\" : null,\"categoryId\" : \"fc1bb1880968e77b5020\",\"categoryName\" : \"上海分公司\",\"workOrderCount\" : null,\"planCounter\" : 115,\"actualCounter\" : 8,\"rank\" : null}],\"msgId\" : \"e70ced01\",\"success\" : true}";
String jsonStr4 = "{\"resultCode\" : 0,\"result\" : [ {\"orgId\" : null,\"categoryId\" : \"333f1328e6c6a7f3c2c7\",\"categoryName\" : \"北京分公司\",\"workOrderCount\" : null,\"planCounter\" : 40,\"actualCounter\" : 10,\"rank\" : null}, {\"orgId\" : null,\"categoryId\" : \"fc1bb1880968e77b5020\",\"categoryName\" : \"上海分公司\",\"workOrderCount\" : null,\"planCounter\" : 100,\"actualCounter\" : 30,\"rank\" : null}],\"msgId\" : \"7589d0d7\",\"success\" : true}";
//把json串jsonStr1、jsonStr2、jsonStr3、jsonStr4转成需要的新list1、list2、list3、list4
List list1=getCommon(jsonStr1,"1");
List list2=getCommon(jsonStr2,"2");
List list3=getCommon(jsonStr3,"3");
List list4=getCommon(jsonStr4,"4");
System.out.println("list1--"+list1);
System.out.println("list2--"+list2);
System.out.println("list3--"+list3);
System.out.println("list4--"+list4);
/**
* 输出如下:
* list1--[{optcompletrate=0.40, categoryName=北京分公司, categoryId=333f1328e6c6a7f3c2c7}, {optcompletrate=0.59, categoryName=上海分公司, categoryId=fc1bb1880968e77b5020}]
* list2--[{inspcompletrate=0.20, categoryName=北京分公司, categoryId=333f1328e6c6a7f3c2c7}, {inspcompletrate=0.17, categoryName=上海分公司, categoryId=fc1bb1880968e77b5020}]
* list3--[{jobcompletrate=0.32, categoryName=北京分公司, categoryId=333f1328e6c6a7f3c2c7}, {jobcompletrate=0.07, categoryName=上海分公司, categoryId=fc1bb1880968e77b5020}]
* list4--[{termusedrate=0.25, categoryName=北京分公司,categoryId=333f1328e6c6a7f3c2c7}, { termusedrate=0.30, categoryName=上海分公司,categoryId=fc1bb1880968e77b5020}]
*/
//把4个list分别合并成一个dataList
dataList.addAll(list1);
dataList.addAll(list2);
dataList.addAll(list3);
dataList.addAll(list4);
System.out.println("dataList=="+dataList);
/**
* 输出如下:
* dataList==[{optcompletrate=0.40, categoryName=北京分公司, categoryId=333f1328e6c6a7f3c2c7},
* {optcompletrate=0.59, categoryName=上海分公司, categoryId=fc1bb1880968e77b5020},
* {inspcompletrate=0.20, categoryName=北京分公司, categoryId=333f1328e6c6a7f3c2c7},
* {inspcompletrate=0.17, categoryName=上海分公司, categoryId=fc1bb1880968e77b5020},
* {jobcompletrate=0.32, categoryName=北京分公司, categoryId=333f1328e6c6a7f3c2c7},
* {jobcompletrate=0.07, categoryName=上海分公司, categoryId=fc1bb1880968e77b5020},
* {categoryName=北京分公司, categoryId=333f1328e6c6a7f3c2c7, termusedrate=0.25},
* {categoryName=上海分公司, categoryId=fc1bb1880968e77b5020, termusedrate=0.30}]
* */
List countList =getNewList(dataList);
System.out.println("新list======"+countList);
/**
* 输出如下:
* 新list======[{jobcompletrate=0.25, optcompletrate=0.40, inspcompletrate=0.25, categoryName=北京分公司, categoryId=333f1328e6c6a7f3c2c7, termusedrate=0.25},
* {jobcompletrate=0.30, optcompletrate=0.59, inspcompletrate=0.30, categoryName=上海分公司, categoryId=fc1bb1880968e77b5020, termusedrate=0.30}]
*
* */
//转成新的json
String jsonnew=JSON.toJSONString(countList);
System.out.println("新json======"+jsonnew);
//转成需要的格式如下:
/**
* 输出如下:
* 新json======[{"jobcompletrate":"0.25","optcompletrate":"0.40","inspcompletrate":"0.25","categoryName":"北京分公司","categoryId":"333f1328e6c6a7f3c2c7","termusedrate":"0.25"},
* {"jobcompletrate":"0.30","optcompletrate":"0.59","inspcompletrate":"0.30","categoryName":"上海分公司","categoryId":"fc1bb1880968e77b5020","termusedrate":"0.30"}]
*/
}
}
/***
* 处理json返回的数据中,需要字段转成list方法
* */
public static List getCommon(String jsonstr,String str){
JSONObject root = new JSONObject().parseObject(jsonstr);// 将json格式的字符串转换成json
JSONArray dataArr = root.getJSONArray("result");//根据json对象中数组的名字解析出其所对应的值
List list = new ArrayList();
Map map;
//对解析出的数组进行遍历,获取所有的点位值
for (int i = 0; i
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?