java合并json数据的代码
如果是基于上述前提,那么实现方法就简单了。
操作json对象,其实标准的方法是先把实体类转换成json再操作。我用Google的Gson直接创建json对象是为了方便,其他JSON依赖包括阿里巴巴的FastJson等。,看你平时用什么习惯了。
Gson依赖性介绍:
& lt依赖性& gt
& ltgroupId & gtcom . Google . code . gson & lt;/groupId & gt;
& ltartifactId & gtgson & lt/artifact id & gt;
& lt版本& gt2 . 8 . 0 & lt;/version & gt;
& lt/dependency & gt;
实施代码:
公共类Main {
公共静态void main(String[] args) {
JSON array JSON array 1 = new JSON array();
JSON object JSON 11 = new JSON object();
JSON 11 . add property(" data 1 "," 0000 ");
JSON 11 . add property(" data 2 "," 111 ");
JSON object JSON 12 = new JSON object();
JSON 12 . add property(" data 1 "," 0000 ");
JSON 12 . add property(" data 2 "," 1111 ");
JSON object JSON 13 = new JSON object();
JSON 13 . add property(" data 1 "," 0000 ");
JSON 13 . add property(" data 2 "," 1111 ");
JSON array 1 . add(JSON 11);
JSON array 1 . add(JSON 12);
JSON array 1 . add(JSON 13);
system . out . println(JSON array 1);
JSON array JSON array 2 = new JSON array();
JSON object JSON 21 = new JSON object();
JSON 21 . add property(" data 3 "," 6666 ");
JSON object JSON 22 = new JSON object();
Json22.addProperty ("data 3 "," 6666 ");
JSON object JSON 23 = new JSON object();
Json23.addProperty ("data 3 "," 6666 ");
JSON array 2 . add(JSON 21);
JSON array 2 . add(JSON 22);
JSON array 2 . add(JSON 23);
system . out . println(JSON array 2);
//遍历json数组,一点一点取出对象。
for(int I = 0;我& ltJSON array 1 . size();i++) {
JSON object JSON 1 = JSON array 1 . get(I)。getAsJsonObject();
JSON object JSON 3 = JSON array 2 . get(I)。getAsJsonObject();
//遍历数据3的内容,通过Entry得到数据3的键和值,合并成数据1。
对于(图。Entry & ltString,JsonElement & gtitem : json3.entrySet()) {
JSON 1 . add property(item . getkey()、item.getValue()。getAsString());
}
}
system . out . println(JSON array 1);
}
}
整个想法是遍历两个json数组并一点一点地合并它们。合并时,遍历data 3的jsonObject,获取它的键和值,合并成data 1。
运行结果: