У меня есть два класса, ClassA и ClassB, а также AssociationClass "многие ко многим". Мне нужна структура, которая содержит связи между A и B, чтобы я мог найти аналог для каждого экземпляра A или B.
Я подумал об использовании Hashmap с парой ключей:
Hasmap<Pair<ClassA, ClassB>, AssociationClass> associations;
Таким образом, я могу добавить и удалить связь между двумя экземплярами ClassA и ClassB, и я могу запросить отношение для двух данных экземпляров.
Однако я ClassA возможность получения всех ассоциаций, определенных для данного экземпляра ClassA или ClassB.
Я мог бы сделать это с помощью грубой силы и перебрать все ключи карты для поиска ассоциаций между данным экземпляром, но это неэффективно и не элегантно.
Знаете ли вы какую-либо структуру данных/бесплатную библиотеку, которая позволяет это? Я не хочу изобретать велосипед.
NB: Это не вопрос базы данных. Эти объекты - чистый POJO, используемый для живых вычислений, мне не нужны постоянные вещи.