我的代码:
JSONObject data = {"result":{"a":[{"artist":"Aney","number:"1"},{"artist":"Aney","number:"2"}],"b":[{"artist":"Boney","number:"3"},{"artist":"Boney","number:"4"}], ....
JSONObject obj = new JSONObject(data.toString());
JSONArray tasks = obj.optJSONArray("result");
但tasks
回报null
.
我尝试了以下代码,但它不起作用:
JSONObject data = {"result":{"a":[{"artist":"Money",...
JSONArray tasks = data.optJSONArray("result");
更新:
我的主要代码是:
// get data from main url and reutnr array
JSONArray tasks = data.optJSONArray("result");
if(alert){
// get data from another url and return object
JSONObject data = {"result":{"a":[{"artist":"Money",...
tasks = data.optJSONArray("result");
}
// now i use tasks in my code
if(tasks.length() > 0){
....
}
当你看到"key": { ... }
时,这意味着key
是一个JSONObject
。
当你看到"key": [ ... ]
,这意味着key
是一个JSONArray
。
在您的情况下,"result"
是一个JSONObject
,所以写这个:
JSONObject tasks = obj.optJSONObject("result");
JSONArray (a, b( 位于根对象内部的对象"result"内,因此您必须导航 hyerarchy 才能获得它:
JSONObject obj = new JSONObject(data.toString());
JSONObject result = obj.getJSONObject("result");
JSONArray tasksA = result.optJSONArray("a");
JSONArray tasksB = result.optJSONArray("b");
请注意,每个"a"和"b"都是要检索的不同JSONArray。