2017-07-04 121 views
-4

我有兩個JSON對象從org.json:第一個是合併兩個嵌套org.json.JSONObject

json1 = {a: {b : {c: val1} } } 

,第二個是

json2= {a {b: {c2: val2 } } } 

是否有任何方式合併這兩對象有一個這樣的對象:

result = {a: { b: {c: val1, c2: val2 } } } 

我對這兩個對象的鍵沒有任何意見,所以我需要循環d對這些對象進行動作並進行合併。有沒有內置的方法來做到這一點。謝謝。

+1

'c1:val1'從哪裏來? –

+0

@ScaryWombat它的c:val1而不是c1。這是一個錯誤,需要確定 –

回答

0
static JSONObject merge(JSONObject obj1, JSONObject obj2) { 
    obj2.forEach((k2, v2) -> obj1.merge(k2, v2, (v1, _v2) -> 
      v1 instanceof JSONObject && _v2 instanceof JSONObject 
        ? merge((JSONObject)v1, (JSONObject)_v2) : "conflict!!")); 
    return obj1; 
}