我需要从 JSONArray 获取 JSONArray:
JSONParser parser = new JSONParser();
JSONObject jObject=(JSONObject)parser.parse(s);
JSONArray messages = (JSONArray) jObject.get("routes");
JSONArray ar = (JSONArray)messages.get("legs");
JSONArray.get 不接受字符串作为参数。
我的 JSON 字符串:
{
"routes" : [
{
"bounds" : {
"northeast" : {
"lat" : 27.9786758,
"lng" : 31.2199858
},
"southwest" : {
"lat" : 27.0120443,
"lng" : 30.9788969
}
},
"copyrights" : "Map data ©2015 Google, ORION-ME",
"legs" : [
{
"distance" : {
"text" : "138 km",
"value" : 138208
},
"duration" : {
"text" : "1 hour 52 mins",
"value" : 6744
},
最佳答案
JSONArray 表示一个数组。数组没有任何属性。它们具有索引从 0 到数组长度的元素。
如果您想从数组中获取第一个元素,即具有 Leg 属性的 JSONObject,请使用如下所示的内容:
JSONObject firstElement = (JSONObject) messages.get(0);
JSONArray ar = (JSONArray) firstElement.get("legs");
确切的方法名称可能会有所不同:有数十个 JSON 库,但您不知道正在使用哪一个。
关于java - Java 中的 JSONArray 中的 JSONArray,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31086547/