Sobes.tech
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.