我有两个JsonObject具有相同的键,但值不同。我想在另一个JsonObject中用相同的键合并两个JsonObject。
JSONObject a = new JSONObject("{\"data\": [ {\"empId\": 1,\"deptId\": 2},{\"empId\": 3,\"deptId\": 4}]}");
JSONObject b = new JSONObject("{\"data\": [ {\"empId\": 7,\"deptId\": 8},{\"empId\": 9,\"deptId\": 10}]}");
结果应该是这样的。
{\"data\": [ {\"empId\": 1,\"deptId\": 2},{\"empId\": 3,\"deptId\": 4},{\"empId\": 7,\"deptId\": 8},{\"empId\": 9,\"deptId\": 10}]}
请让我知道怎么做。
发布于 2013-04-24 09:42:26
使用JSONArray
存储多个JSONObject
。使用它,不需要担心为这个JSONObject
分配密钥。
JSONObject a = new JSONObject("{\"data\": [ {\"empId\": 1,\"deptId\": 2},{\"empId\": 3,\"deptId\": 4}]}");
JSONObject b = new JSONObject("{\"data\": [ {\"empId\": 7,\"deptId\": 8},{\"empId\": 9,\"deptId\": 10}]}");
编辑
JSONArray jArr_A= a.getJSONArray("data");
JSONArray jArr= new JSONArray();
for(int i=0;i<jArr_A.length();i++){
jArr.put(jArr_A.getJSONObject(i));
}
现在换另一个对象
jArr_A= b.getJSONArray("data");
for(int i=0;i<jArr_A.length();i++){
jArr.put(jArr_A.getJSONObject(i));
}
现在检查jArr对象的长度,让它加倍。
JSONObject mainJson = new JSONObject();
mainJson.put("data", jArr);
https://stackoverflow.com/questions/16188517
复制相似问题