Re[3]: Чем плох объект в качестве ключа для HashMap?
От: vsb Казахстан  
Дата: 03.10.23 16:17
Оценка: 3 (1) +1
Здравствуйте, Aleksei_Lekomtsev, Вы писали:

vsb>>Надо реализовать методы equals и hashCode.


A_L>Возможно еще сделать объект immutable


В идеале — да. Или, по-современному — record. Ещё есть тонкий момент — List, который передали в конструкторе, вызывающий может потом решить поменять. Поэтому с какой-то точки зрения правильно бы его скопировать, а не просто ссылку сохранить. С другой точки зрения возможно, что в 100% случаев его никто менять не будет и будет пустое копирование, которое просто замедляет программу ради борьбы с призрачной угрозой. Я даже не знаю, как в таких случаях поступать. В идеале бы в языке должны быть отдельные интерфейсы для иммутабельных структур, но в жаве что-то не додумались до сих пор.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.