У меня есть такая HashMap
LinkedHashMap<K, V> = new LinkedHashMap<>();
эта карта используется в качестве кеша для реализации LRU (наименее недавно использованного)
В этом кеше я хочу сохранить результаты функций, которые не имеют побочных эффектов, чтобы для одного и того же ввода они всегда давали один и тот же вывод.
Я также использую би-функции, которые имеют <T,U,R>
T и U - универсальные типы. А вот и Pair<T,U>
в игру. Как мне сохранить такую пару в качестве ключа в моей хэш-карте?
И может кто-нибудь объяснить, как именно перезапись функций equals(Obj o)
и hashCode()
должна помочь с этой проблемой?
Pair
класс вы используете и что пробовали до сих пор? И что дает вам представление о том, чтоequals
иhashCode
играют роль? Могут, но если вы не знаете, то странно, что вы спрашиваете о них. - person daniu   schedule 19.01.2021equals
иhashcode
. Я сам написал класс Pair как Im, использующий JDK15 - person real_G   schedule 19.01.2021Pair
из принятого ответа и использовать его как ключ к вашей карте. Возможно, вы захотите опубликовать пример кода, как вы собираетесь его использовать. - person daniu   schedule 19.01.2021