import net.sf.json.JSONArray; import net.sf.json.JSONObject; /** * 艺馨测试类 * @author yltd * */ public class JsonToJava { public static void main(String[] args) { String jsonString = "[{\"time\":\"2018/12/14\",\"value\":\"2\"},{\"time\":\"2018/12/15\",\"value\":\"5\"},{\"time\":\"2018/12/16\",\"value\":\"4\"},{\"time\":\"2018/12/17\",\"value\":\"7\"},{\"time\":\"2018/12/18\",\"value\":\"2\"},{\"time\":\"2018/12/19\",\"value\":\"3\"},{\"time\":\"2018/12/20\",\"value\":\"5\"},{\"time\":\"2018/12/20\",\"value\":\"6\"},{\"time\":\"2018/12/19\",\"value\":\"3\"},{\"time\":\"2018/12/18\",\"value\":\"2\"},{\"time\":\"2018/12/17\",\"value\":\"3\"},{\"time\":\"2018/12/16\",\"value\":\"6\"},{\"time\":\"2018/12/15\",\"value\":\"2\"},{\"time\":\"2018/12/14\",\"value\":\"1\"}]"; getPersons(jsonString); } public static JSONArray getPersons(String jsonString) { JSONArray jsonArray = JSONArray.fromObject(jsonString); //将json转换成json数组 System.out.println(jsonArray); for(int i=0;i<jsonArray.size();i++){ //循环对比 JSONObject jObject_one=jsonArray.getJSONObject(i); for (int j = i; j < jsonArray.size()-1; j++) { JSONObject jObject_tow=jsonArray.getJSONObject(j+1); if(jObject_one.get("time").equals(jObject_tow.get("time"))){//判断两个时间是否相同,相同时 值相加 String key = jObject_one.getString("time"); int value = Integer.valueOf(jObject_one.getString("value")) +Integer.valueOf(jObject_tow.getString("value")); //修改值 jObject_one.put("time", key); jObject_one.put("value", value); //将json数组中的第二个时间移除 jsonArray.remove(j+1); } } } System.out.println("数组移除后:"+jsonArray); return jsonArray; } } =================结果:============ [{"time":"2018/12/14","value":"2"},{"time":"2018/12/15","value":"5"},{"time":"2018/12/16","value":"4"},{"time":"2018/12/17","value":"7"},{"time":"2018/12/18","value":"2"},{"time":"2018/12/19","value":"3"},{"time":"2018/12/20","value":"5"},{"time":"2018/12/20","value":"6"},{"time":"2018/12/19","value":"3"},{"time":"2018/12/18","value":"2"},{"time":"2018/12/17","value":"3"},{"time":"2018/12/16","value":"6"},{"time":"2018/12/15","value":"2"},{"time":"2018/12/14","value":"1"}] 数组移除后: [{"time":"2018/12/14","value":3},{"time":"2018/12/15","value":7},{"time":"2018/12/16","value":10},{"time":"2018/12/17","value":10},{"time":"2018/12/18","value":4},{"time":"2018/12/19","value":6},{"time":"2018/12/20","value":11}] |
|