有没有办法限制Java中的JSONArray大小?

时间:2017-04-13 01:07:01

标签: java android arrays json

例如,如果我有一个包含150个项目的数组的JSONObject,有没有办法只在JSONObject中创建前5个项目的JSONArray?

我有这个:

        protected void onPostExecute(String result) {
        super.onPostExecute(result);

        try {
            JSONObject jsonObject = new JSONObject(result);
            JSONArray jsonArray = new JSONArray(jsonObject.getString("cast"));

但我想避免调用JSONArray jsonArray = new JSONArray(jsonObject.getString(" cast"));因为然后我创建了整个JSONObject的数组,而不仅仅是前五个项目。

谢谢!

1 个答案:

答案 0 :(得分:0)

您可以修改JSON响应或创建新的JSONArray并放置前五项。请参考代码:

    JSONArray studentArray = jsonObject.optJSONArray("students");

    JSONArray firstFiveStudentArray = new JSONArray();
    for (int i = 0; i <= 5; i++) {
        JSONObject studentObj = studentArray.optJSONObject(i);
        if (studentObj != null) {
            firstFiveStudentArray.put(studentObj);
        }
    }