原始数据如下。
{'index_id':'19557442 '、' itemid':'113795 '、' time':'1467619020 '、' value':'1'},
{'index_id':'19557507 '、' itemid':'114227 '、' time':'1467619020 '、' value':'1'},
{'index_id':'19557534 '、' itemid':'114231 '、' time':'1467619020 '、' value':'1'},
{'index_id':'19557534 '、' itemid':'114233 '、' time':'1467619020 '、' value':'1'},
{'index_id':'19557534 '、' itemid':'114237 '、' time':'1467619020 '、' value':'1'},
{'index_id':'19557534 '、' itemid':'114239 '、' time':'1467619020 '、' value':'1'},
{'index_id':'19557593 '、' itemid':'114241 '、' time':'1467619020 '、' value':'1'},
{'index_id':'20118932 '、' itemid':'115778 '、' time':'1467619020 '、' value':'1'},
{'index_id':'11111111 '、' itemid':'222222 '、' time':'1467619020 '、' value':'1'},
{'index_id':'11111111 '、' itemid':'333333 '、' time':'1467619020 '、' value':'1'},
{'index_id':'11111111 '、' itemid':'444444 '、' time':'1467619020 '、' value':'1'},
{'index_id':'11111111 '、' itemid':'555555 '、' time':'1467619020 '、' value':'1'},
{'index_id':'11111111 '、' itemid':'666666 '、' time':'1467619020 '、' value':'1'},
{'index_id':'11111111 '、' itemid':'777777 '、' time':'1467619020 '、' value':'1'},
{'index_id':'19557534 ',' itemid':'1145235 ',' time':'1467619020 ',' value':'1'}]
当前,必须合并具有相同index_id的值。 其实array和list很像。 如果遇到list,也可以用我的方法创建新的阵列临时存储json
//*
publicstaticjsonarraydelrepeatindexid (jsonarrayarray ) )。
int num=0;
for(intI=0; i array.size (; I ) {
if(num==0) {
阵列temp.add (array.get (I ) );
}else{
int numJ=0;
for(intj=0; j arrayTemp.size (; j ) {
string index _ idi=newjsonobjecti.get (index _ id ).toString );
string value I=newjsonobjecti.get (' value ' ).toString );
stringt imei=newjsonobjecti.get (' time ' ).toString );
stringitemidi=newjsonobjecti.get (itemid ).toString );
string index _ idj=newjsonobjectj.get (index _ id ).toString );
string value j=newjsonobjectj.get (' value ' ).toString );
if(index_idi.equals(index_idj ) ) )
int new value=integer.parseint (valuei ) integer.parseint (valuej ) );
阵列temp.remove (j;
新对象. put (index _ id ),index_idI );
newobject.put(itemid )、itemidI );
newobject.put('time ',timeI );
newobject.put('value ',newValue;
array temp.add (新对象;
布雷克;
}
numJ;
}
if(numj-1==arraytemp.size ()-1 ) {
阵列temp.add (array.get (I ) );
}
}
num;
}
返回阵列模板;
}
输出结果如下。
{'clientip':'10.50.129.11 ',' hostname':'IQSH-D9396 ',' index _ gather ' 3: yqdxbc { ' hashker ' type':0,' value':1},{'hashkey': ',' index } ' source host ' :1467617940 ',' ' index} 'sourcehost': ',' time':1467617940,' type':0,' value':1},{'hashkey': ',} ' type':0,' value':1},{'hashkey': ',' index } ' source host ' :1467617940 ',' ' index} 'sourcehost': ',' time':1467617940,' type':0,' value':6} ',{'hashkey': ',}