Junior — Middle
Kako se vrši poređenje objekata dodatih u HashSet?
sobes.tech АИ
Одговор од АИ
Prilikom dodavanja objekata u HashSet, poređenje se vrši u dva koraka:
-
Izračunavanje hash koda: Za određivanje pozicije u hash tabeli, poziva se metoda
hashCode()objekta. -
Provera jednakosti: Ako u ćošku sa tim hash kodom već postoje objekti, poziva se metoda
equals()da proveri da li je novi objekat jednak nekom od već dodatih.
Ako hashCode() dva objekta odgovara, ali equals() vraća false, oba objekta se smatraju različitim i mogu biti sačuvana u skupu.
Zbog toga je važno prepisati metode hashCode() i equals() tako da jednaki objekti imaju isti hash kod i da se pravilno upoređuju.