У меня есть два (или более) Map<String, Integer>
объектов. Я хотел бы объединить их с Java 8 Stream API таким образом, чтобы значения для общих ключей были максимальными значениями.
@Test
public void test14() throws Exception {
Map<String, Integer> m1 = ImmutableMap.of("a", 2, "b", 3);
Map<String, Integer> m2 = ImmutableMap.of("a", 3, "c", 4);
List<Map<String, Integer>> list = newArrayList(m1, m2);
Map<String, Integer> mx = list.stream()... // TODO
Map<String, Integer> expected = ImmutableMap.of("a", 3, "b", 3, "c", 4);
assertEquals(expected, mx);
}
Как я могу сделать этот метод проверки зеленым?
Я играл с collect
и Collectors
некоторое время без каких-либо успехов.
(ImmutableMap
и newArrayList
принадлежат Google Guava.)