gpt4 book ai didi

java - 合并两个具有相同键和不同值的 JsonObject

转载 作者:行者123 更新时间:2023-12-01 23:52:02 26 4
gpt4 key购买 nike

我有两个具有相同键但不同值的 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}]}

请让我知道如何执行此操作。

最佳答案

使用JSONArray来存储多个JSONObject。使用此功能无需担心为此 JSONObject 分配 key ,例如

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);

关于java - 合并两个具有相同键和不同值的 JsonObject,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16188517/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com