Я пытаюсь получить список Long из списка карт, используя Stream API.Java 8 stream: parse list of maps
Это как класс выглядит следующим образом:
class Report Bean{
private MarshallableMap data;
}
данных Объект содержит записи, как это: ("ID", 1), ("Name", "АСМАП").
Мне нужно получить список идентификаторов из списка ReportBeans. Это то, что я пробовал:
List<Long> ids = reportBeans.stream().flatMap(
m -> m.getData().entrySet().stream()
.filter(e -> e.getKey().equals("ID"))
.map(Map.Entry::getValue)
.map(Long.class::cast))
.collect(Collectors.toList());
Я получаю пустой список. Пожалуйста, мне нужен совет. Спасибо
вы уверены, что есть какие-то бобы с ключом, который точно '«ID»'? – Moira
Делитесь тем, что состоит из MarshallableMap. Как связан идентификатор. И, может быть, опечатка в классе name 'ReportBean' – nullpointer