Java 这是一种正确的JSON格式{“coord”:{“lat”37.4056,“lon”122.0775}

Java 这是一种正确的JSON格式{“coord”:{“lat”37.4056,“lon”122.0775},java,json,Java,Json,我知道正确的JSON格式如下: {"coord":[{"lat":37.4056,"lon":-122.0775}]} 但我有一个数据以这种格式呈现给我 {"coord":{"lat":37.4056,"lon":-122.0775}} 如果这是正确的JSON格式,如何在Java中解析它?在JSON中,{}括号表示对象,而[]括号表示数组 第一个示例包含一个数组,其中一个对象包含lat和lon属性,该对象由data.coord[0].lat访问 第二个示例是一个对象,其中包含一个具有lat和

我知道正确的JSON格式如下:

{"coord":[{"lat":37.4056,"lon":-122.0775}]}
但我有一个数据以这种格式呈现给我

{"coord":{"lat":37.4056,"lon":-122.0775}}

如果这是正确的JSON格式,如何在Java中解析它?

JSON
中,
{}
括号表示对象,而
[]
括号表示数组

第一个示例包含一个数组,其中一个对象包含
lat
lon
属性,该对象由
data.coord[0].lat
访问
第二个示例是一个对象,其中包含一个具有
lat
lon
属性的对象。
也就是说,没有数组,只有一个对象。对象由
data.coord.lat
访问

// Parse:
JSONObject obj = new JSONObject(jsondatastring);
// Fetching the object:
JSONObject coord = obj.getJSONObject("coord");
// Or fetching the array:
JSONArray coords = obj.getJSONArray("coord");
两者都是正确的json

您几乎以相同的方式解析它们,它们只是不同的类型(在
coord
下的对象或数组)