В моем приложении есть два вида объектов, где каждый объект одного вида имеет ровно один соответствующий объект другого типа.
Очевидный выбор для отслеживания этих отношений - Map<type1, type2>
, как в HashMap. Но почему-то я с подозрением. Могу ли я использовать объект в качестве ключа на карте, передать его, поместить его в другую коллекцию и в любое время получить своего партнера с карты?
После создания объекта все, что я передаю, это идентификатор, верно? Так что, вероятно, нет проблем там. Что если я сериализую и десериализую ключ?
Любые другие предостережения? Должен ли я использовать что-то еще для сопоставления пар объектов, например, число, которое я генерирую сам?