Java 如何获取JSONArray的最深元素
如何在JavaAndroid中获得json数组的最深数组 排列 ( [0]=>阵列Java 如何获取JSONArray的最深元素,java,android,arrays,json,Java,Android,Arrays,Json,如何在JavaAndroid中获得json数组的最深数组 排列 ( [0]=>阵列 ( [0] => Array ( [0] => 1 [1] => and [2] => 2 ) [1] => or [2] => 3 ) [1] => and [
(
[0] => Array
(
[0] => 1
[1] => and
[2] => 2
)
[1] => or
[2] => 3
)
[1] => and
[2] => 2
)
在这种情况下,我希望获取元素[0][0]
或
排列
我不知道你到底想做什么,但也许这可以让你的问题变得更清楚:
JSONArray findDeepestArray(JSONArray arr){
for(Object o : arr){
if(o instanceof JSONArray){
JSONArray ob = (JSONArray) o;
JSONArray a = findDeepestArray(ob);
return null != a ? a : ob;
}
}
}
请根据你的需要修改一下,这只是一个草稿
希望有帮助。json编码为:[[1,“and”,2],“or”,3],“and”,2]到目前为止,您尝试了什么?我认为这需要一个递归方法,但如何实现呢!在
JSONArray
API文档中有什么不清楚的地方?我的问题是JSONArray只在一个级别上解码数组
JSONArray findDeepestArray(JSONArray arr){
for(Object o : arr){
if(o instanceof JSONArray){
JSONArray ob = (JSONArray) o;
JSONArray a = findDeepestArray(ob);
return null != a ? a : ob;
}
}
}