Junior — Middle
Meg tudná magyarázni a hashCode metódus célját az Object osztályban Java-ban, és hogyan használják?
sobes.tech MI
Válasz az MI-től
A hashCode() metódus a Object osztályban Java-ban egy egész szám értéket (hash-kódot) ad vissza az objektumról, amit például hash-táblákban (HashMap, HashSet) gyors kereséshez használnak.
A szerződés szerint, ha két objektum egyenlő a equals() módszer szerint, akkor hashCode() értékük ugyanaz kell legyen. Ez fontos a hash-alapú kollekciók helyes működéséhez.
Alapértelmezés szerint a hashCode() az objektum memória-címéhez kapcsolódó értéket ad vissza, de gyakran felülírják, hogy figyelembe vegyék az objektum tartalmát.
Példa felülírásra:
@Override
public int hashCode() {
return Objects.hash(field1, field2);
}
Így a hashCode() hatékonyan segíti az objektumok indexelését a kollekciókban.