Sobes.tech
Junior — Middle

Meg tudná magyarázni, mi az a hashCode metódus Java-ban, és hogyan használják?

sobes.tech MI

Válasz az MI-től

A Java hashCode metódusa egy egész szám értéket ad vissza, amely az objektum hash-kódjaként szolgál. Gyors kereséshez és összehasonlításhoz használják kollekciókban, mint például HashMap, HashSet és más hash-alapú adatszerkezetekben. Egy helyesen implementált hashCode-nak összhangban kell lennie az equals módszerrel: ha két objektum equals szerint egyenlő, akkor hashCode értékük ugyanaz kell legyen.

Példa az hashCode és equals felülírására:

@Override
public int hashCode() {
    return Objects.hash(field1, field2);
}

@Override
public boolean equals(Object obj) {
    if (this == obj) return true;
    if (obj == null || getClass() != obj.getClass()) return false;
    MyClass other = (MyClass) obj;
    return Objects.equals(field1, other.field1) && Objects.equals(field2, other.field2);
}