Junior — Middle
Чӣ гуна муқоиса кардани объектҳое, ки ба HashSet илова шудаанд, сурат мегирад?
sobes.tech AI
Ҷавоб аз AI
Ҳангоми илова кардани объектҳо ба HashSet, муқоиса дар ду марҳила сурат мегирад:
-
Ҳисоб кардани коди hash: Барои муайян кардани ҷойгиршавӣ дар ҷадвали hash, методи
hashCode()-и объект даъват мешавад. -
Таҳқиқи баробарӣ: Агар дар ҳуҷра бо ин коди hash аллакай объектҳо бошанд, методи
equals()барои санҷиши он ки оё объект нав баробари яке аз объектҳои аллакай иловашуда аст, даъват мешавад.
Агар hashCode() ду объект мувофиқат кунад, аммо equals() баргардонад false, ҳар ду объект ҳамчун фарқкунанда ҳисобида мешаванд ва метавонанд дар маҷмӯъ нигоҳ дошта шаванд.
Аз ин рӯ, муҳим аст, ки методҳои hashCode() ва equals() такрор карда шаванд, то ки объектҳои баробар як хеш-код дошта бошанд ва дуруст муқоиса шаванд.