如何循环并获取json对象

时间:2016-07-05 04:36:54

标签: json arraylist getjson

{
    "result": [
        {
            "id": "a258377906705d889422fd0b41c324b8",
            "coordinate": {
                "London": {
                    "x": 65.565709,
                    "y": 98.931235
                },
                "New_York": {
                    "x": 37.59751,
                    "y": 47.448718
                }
            }
        }
    ]
}

如果我有一个类似上面的json, 如何循环获取x,y坐标,如果我获得更多数据,我该如何获得?

如果我还希望将LondonNew York添加到array list,我该怎么办(不能直接添加名称,因为有两个以上的数据) ?

2 个答案:

答案 0 :(得分:0)

您可以解析它,然后使用JSON.parse( insert json here )

使用它

它的基本功能是它接收你的JSON字符串并将其转换为可用的JSON。

为了将新对象添加到另一个对象中,我建议使用Object.assign()。 您可以在此处参考详细信息:Link

以下是该网站提供的示例:

var o1 = { a: 1 };
var o2 = { b: 2 };
var o3 = { c: 3 };

var obj = Object.assign(o1, o2, o3);
console.log(obj); // { a: 1, b: 2, c: 3 }
console.log(o1);  // { a: 1, b: 2, c: 3 }, target object itself is changed.

Object.assign()将目标对象作为第一个参数,并使用我们提供的其他参数对其进行修改。

在您的情况下,您可以像这样更新您的对象:

var countryCoord = JSON.parse(yourjsondata); // parse the json that you included
 Object.assign(countryCoord, newCoord, newCoord2,...etc); //this would update countryCoord alone

在线解析器:Link

答案 1 :(得分:0)

您必须处理json并了解获取JSONObject的位置以及获取JSONArray的位置,在此基础上您可以相应地解析JSON。

请参阅链接以获取有关使用Java中的嵌套项解析json对象的更多信息:

Retrieving nested arrays values with java