Распарсить многомерный массив JSONObject Android

Есть ответ от сервера в виде JSONObject .
Вид

[data = [
          0 [
              name = "test"
             ],
          1 [
              name = "test"
             ]
          2 [
              name = "test"
             ]
]


Какими методами можно пройтись по такому объекту? как это в яве делается? Заранее спасибо за доки и примеры.
no image

Аноним

20 ноября, 18:13
446

Нет комментариев

Добавить комментарий
Вы не можете оставлять комментарии. Чтобы добавить комментарий, залогиньтесь или зарегистрируйтесь
Вы не можете голосовать. Чтобы проголосовать, залогиньтесь или зарегистрируйтесь

1 ответ

И так, если всем влом отвечать на простые вопросы новичков, отвечу сам себе (мне не в лом ответить тем, кто придет сюда с тем же вопросом).

Для начала элементы внутри data должны быть массивом. т.е. выглядеть так ({} - объект. [] - массив)

{data = [
          0 {
              name = "test"
             },
          1 {
              name = "test"
             },
          2 {
              name = "test"
             }
  ]
}



Далее получить из JSONObject на массив, и по нему пройтись используя for (использовать foreach видимо нельзя, или его нет в языке java. Не важно, факт в том, что я не нашел ни одного примера с ним).

// Получить массив
JSONArray data = response.getJSONArray("data");
int data_length = data.length();
for(int i = 0; i < data_length; i++) {
  // здесь получаем элемент массива. это не обязательно должен быть объект.  
  JSONObject row = data.getJSONObject(i);
  String name = row.getString("name");
}


И еще момент. т.к. проходим циклом for. то пришлось привести ключи массива к виду 0,1,2,3

no image

Аноним

20 ноября, 18:35

Нет комментариев

Добавить комментарий
Вы не можете отвечать на вопросы. Чтобы ответить на вопрос, пожалуйста залогиньтесь или зарегистрируйтесь
Работа в Украине
Вакансии от WORK.ua
SMM-менеджер, 11000 грн.
Киев, Трейд-Люкс Груп
Аналитик 1С
Киев, Баядера Логистик, ООО
Intermediate Strong .Net Software Engineer
Черновцы, SoftServe
Middle QA Manual Engineer
Киев, Innovecs
IOS Developer
Днепр, V-jet group
3D Video Editor, 20000 грн.
Киев, One vision
.Net Developer
Днепр, ISDDesign
Frontend developer
Киев, Smile
Developmental electronic engineer (senior)
Другие страны, Accross Borderland Consulting