Как достать объекты по id из JSON?
Как получить объекты из JSON по определенному ID, которое содержится в структуре:
"routes":[
{
"platforms":[
{
"estimated_fill":1.0,
"volume":1.100,
"address":"АТБ-Містечко",
"lat":50.2107736547029,
"lng":30.3174322843552,
"id":1022549,
"quantity":1
},
{
"estimated_fill":1.0,
"volume":1.100,
"address":"пр.Лесі Українки, 15 ",
"lat":50.1974241245373,
"lng":30.2944350242615,
"id":1022542,
"quantity":1
},
{
"estimated_fill":1.0,
"volume":1.100,
"address":"Столичка",
"lat":50.216073975587,
"lng":30.3178024291992,
"id":1022543,
"quantity":3
},
{
"estimated_fill":1.0,
"volume":1.100,
"address":"Солнечная",
"lat":50.1883300230983,
"lng":30.2941560745239,
"id":1022544,
"quantity":1
},
{
"estimated_fill":1.0,
"volume":1.100,
"address":"вул.Володимирська,13",
"lat":50.1747131083508,
"lng":30.3193259239197,
"id":1022545,
"quantity":1
},
{
"estimated_fill":1.0,
"volume":1.100,
"address":"вул.Володимирька, 28 (Корунд)",
"lat":50.1733834992561,
"lng":30.3227108716965,
"id":1022546,
"quantity":1
},
{
"estimated_fill":1.0,
"volume":1.100,
"address":"Фуршет",
"lat":50.1795055782639,
"lng":30.3133499622345,
"id":1022547,
"quantity":1
},
{
"estimated_fill":1.0,
"volume":1.100,
"address":"вул.Набережна",
"lat":50.1800174337311,
"lng":30.3084254264832,
"id":1022548,
"quantity":1
},
{
"estimated_fill":1.0,
"volume":1.100,
"address":"Військове .Містечко",
"lat":50.2120369970609,
"lng":30.3167670965195,
"id":1022550,
"quantity":1
},
{
"estimated_fill":1.0,
"volume":1.100,
"address":"вул.Грушевського,25",
"lat":50.180299123662,
"lng":30.3108340501785,
"id":1022551,
"quantity":1
},
{
"estimated_fill":1.0,
"volume":1.100,
"address":"Іванковичі",
"lat":50.2786446089967,
"lng":30.4251337051392,
"id":1022552,
"quantity":2
}
],
"num":"01.05 - Смаколики",
"id":1022554, ВОТ ПО ЭТОМУ ID НУЖНО ПОЛУЧИТЬ ВЕСЬ СПИСОК КОТОРЫЙ!!!
"itinerary":""
}
], "success":true
Я получаю ответ из сервера, получаю List с полным ответом! Но мне необходимо загружать в отдельный List, только конкретные объекты, как это сделать?
Вот мой интерфейс:
@Headers({("X-Signature: reserved"),("Content-Type: text/x-json")})
@POST("get_routes") Call getRoutes(@Body Map<String, String> id);
С ответом все хорошо, вынимаю конкретный список:
for (Routes route : rout) {
for (int i = 0; i < route.getRoutes().size(); i++) {
try {
JSONObject jsonObject = new JSONObject(new Gson().toJson(response.body().getRoutes().get(i)));
list_routes.add(Collections.singletonList(jsonObject.get("platforms")));
} catch (JSONException e) {
e.printStackTrace();
}
EditText editText = findViewById(R.id.editText4);
//editText.setText("" + list_routes.get(0));
editText.setText("" + list_routes);
}
}
Но необходимо конкретный список брать и вносить в отдельный лист. Если данный список имеет такой же ID я его добавляю