У меня есть
Map<Foo, Bar> m;
m.put(foo1, bar1);
m.put(foo2, bar2);
метод проверки схожести ключей:
boolean isSimilar(Foo foo1, Foo foo2);
Я хотел бы сгруппировать значения записей, если ключи похожи. Если foo1 похож на foo2, я хотел бы сгруппировать значение в новую карту:
Map<foo1, {bar1,bar2}>
Можно ли использовать сборщик groupingBy, где группировка выполняется не по идентичным ключам, а по аналогичным ключам?
Я хотел бы запустить этот процесс параллельно. Любые предложения приветствуются.
Спасибо.