Я пытаюсь выполнить итерацию List<Map<String, Object>>
и хочу проверить, является ли код"утвержденным" или нет - если код имеет значение "утвержден" тогда я хотел бы добавить "id" как Key и "date" как Value в другой hashMap.
List<Map<String, Object>> prodIds = ((List<Map<String, Object>>) myIds.get("result"));
Этот prodIds возвращает следующий набор записей:
[{id=[14766724], Date=[1999-01-01]}, {id=[49295837], code=[approved], Date=[2003-04-01]}]
[{id=[58761474621], code=[approved], Date=[2017-09-30]}, {id=[3368781], code=[Cancelled], Date=[2014-01-01]}, {id=[48843224], code=[Cancelled], Date=[2009-01-01]}]
Я хочу получить что-то вроде этого: Если код "утвержден" - мой новый га sh карта должна иметь значение, как показано ниже:
map.put("49295837", "2003-04-01")
map.put("58761474621", "2017-09-30")
Java Код
List<Map<String, Object>> prodIds = ((List<Map<String, Object>>) myIds.get("result"));
System.out.println("prodIds : " +prodIds );
// [{id=[14766724], Date=[1999-01-01]}, {id=[49295837], code=[approved], Date=[2003-04-01]}]
// [{id=[58761474621], code=[approved], Date=[2017-09-30]}, {id=[3368781], code=[Cancelled], Date=[2014-01-01]}, {id=[48843224], code=[Cancelled], Date=[2009-01-01]}]
Map<String, String> newMap = new HashMap<>();
for (Map<String, Object> map : prodIds) {
for (Map.Entry<String, Object> entry : map.entrySet()) {
String key = entry.getKey();
System.out.println("Key : " +key);
String value = (String) entry.getValue();
System.out.println(" Value : " +value);
}
}
У меня возникают трудности с установкой ключа (идентификатор ) и значение (Дата) динамически, если кодовое значение «утверждено» в новой карте ha sh. Было бы очень полезно, если бы кто-то мог помочь мне с этим.
Заранее признателен за вашу помощь!
Спасибо