Перед лицом сложной задачи найти эффективный способ объединения двух массивов карт.
Карта выглядит следующим образом:
{Username=User1, Role=Admin}
Таким образом, один список выглядит следующим образом:
List1 = [{Username=User1, Role=Admin},{Username=User2, Role=Auditor}]
и т. Д.
Существует еще один список:
List 2 = [{Username=User1, Role=Integrator},{Username=User2, Role=Manager}]
Примечание: Пользователи имеют разные ролив разных списках.
В итоге я хочу получить следующее:
MergedList = [{Username=User1, Role=[Admin,Integrator]},{Username=User2, Role=[Auditor,Manager}]
Другое примечание: Фактический список содержит 50 000 карт икаждая карта имеет 20 входов!Просто постарался сделать это просто.
Ниже приведены материалы, которые я пробовал.Но не удалось.
Попробовал putAll
.Пробовал merge
.
Пробовал то, что нашел в другом посте
map2.forEach((k, v) -> map3.merge(k, v, String::concat));