Próbuję użyć strumienia List<Map<String, Integer>>
, aby scalić wszystkie zawarte w nim mapy w jeden. Służy to agregacji wielu odpowiedzi na żądanie w jeden.Strumienie Java 8 - łączenie listy map
Rozważmy następujący zestaw danych (za pomocą JSON aby ułatwić odczyt):
[
{"field1": 1, "field2": 5},
{"field2": 6, "field3": 10},
{"field1": 3, "field4": 15}
]
chcę go prowadzić w następujący (aby nie nie materia):
{"field1": 4, "field2": 11, "field3": 10, "field4": 15}
I chcesz zsumować wszystkie klucze i połączyć je w jedną mapę. Czy można to zrobić za pomocą interfejsu Stream w Java 8?
Odkryłem Collectors.groupingBy(o -> o, Collectors.counting())
, więc być może jestem na właściwej linii, po prostu muszę wymyślić, jak faktycznie połączyć je z góry bez pomijania wyników.
Z góry dziękuję.
znacznie prostsze niż to, co pierwotnie wysłane. – rgettman