为了账号安全,请及时绑定邮箱和手机立即绑定

两个 JSONObject 合并的问题

两个 JSONObject 合并的问题

慕的地8271018 2019-03-12 13:11:48
最近使用 org.json.JSONObject 封装json数据,现在遇到想把两个 JSONObject 进行合并不知道怎么弄了,请教各位老司机指点一下。import org.json.JSONObject;JSONObject json1 = new JSONObject();JSONObject json2 = new JSONObject();        json1.put("aa", 1111);json1.put("bb", 2222);        json2.put("cc", 3333);json2.put("dd", 4444);        System.out.println(json2);想要得到json1与json2合并后的json格式,有没有相应的方法啊,我看了下API没找到。{"aa":1111,"bb":2222,"cc":3333,"dd":4444}
查看完整描述

2 回答

?
BIG阳

TA贡献1859条经验 获得超6个赞

public static JSONObject deepMerge(JSONObject source, JSONObject target) throws JSONException {


    for (String key: source.keySet()) {

        Object value = source.get(key);

        if (!target.containsKey(key)) {

            // new value for "key":

            target.put(key, value);

        } else {

            // existing value for "key" - recursively deep merge:

            if (value instanceof JSONObject) {

                JSONObject valueJson = (JSONObject)value;

                deepMerge(valueJson, target.getJSONObject(key));

            } else {

                target.put(key, value);

            }

        }

    }

    return target;

}


查看完整回答
反对 回复 2019-04-18
?
慕容森

TA贡献1853条经验 获得超18个赞

循环json2的所有key,value,再put到json1中不就可以了么 ^_^


查看完整回答
反对 回复 2019-04-18
  • 2 回答
  • 0 关注
  • 2060 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号