一尘不染

JSONArray异常:索引50超出[0..50)范围。JsonArray是否有任何限制

json

JSON以以下方式在我的android应用程序中使用:

  • 将请求发送到URL并接收JSON响应。
  • 解析JSON响应并获取所需的元素“结果”,它是一个JSON数组。
  • 在此JSON数组的第i个元素上循环,然后继续所需的操作

码:

Integer numberOfItemsInResp = pagination.getInt("items");
    JSONArray results = jsonResponse.getJSONArray("results");
    for (int i = 0; i < numberOfItemsInResp; i++){
        JSONObject perResult = results.getJSONObject(i);
    }

问题是当 达到50,然后JSONObject perResult = results.getJSONObject(i)引发
org.json.JSONException:索引50超出范围[0..50)”
异常。

JSONArray是否有任何限制?


阅读 254

收藏
2020-07-27

共1个答案

一尘不染

什么numberOfItemsInResp啊 建议您这样做:

JSONArray results = jsonResponse.getJSONArray("results");
final int numberOfItemsInResp = results.length();
for (int i = 0; i < numberOfItemsInResp; i++){
    JSONObject perResult = results.getJSONObject(i);
}
2020-07-27