Как выполнить итерацию этого массива JSON с использованием Java и org.json в Android?

Моя строка JSON выглядит так (содержится в строковой переменной с именем sJSON ):

[
    {"id":284}
],
[
    {"name":John,"surname":Doe},
    {"name":Jane,"surname":Doe}
]

Я могу разобрать первый массив как this (с использованием Java и импортом org.json):

JSONArray arrJSON = new JSONArray(sJSON);
JSONObject jsonGeneralData = new JSONObject(arrJSON.get(0).toString());

String sResult = jsonGeneralData.get("id").toString();

Это возвращает ожидаемый результат, равный 284. Я изо всех сил пытаюсь получить второй массив элементов и перебирать их. Я не уверен, что моя строка JSON имеет неправильный формат или я пытаюсь получить к ней неправильный доступ. Вот что я пробовал:

JSONObject jsonPersonData = new JSONObject(arrJSON.get(1).toString());

Насколько я понял, я не могу понять, как перебирать отдельные элементы внутри второго массива.

РЕДАКТИРОВАТЬ:

Кажется, что эта строка анализирует только первую строку в квадратных скобках:

JSONArray arrJSON = new JSONArray(sJSON);

Либо JSON неверен (тот же пример, что и выше), либо он неправильно разбирает его? Мне удалось решить проблему, разделив строку и поместив каждую из них в свой собственный JSONArray , но я не думаю, что это лучший способ делать что-то.

9
задан Alexander Farber 20 November 2015 в 14:45
поделиться