Sobes.tech
Junior — Middle

Môžete vysvetliť účel metódy hashCode v triede Object v Jave a ako sa používa?

sobes.tech AI

Odpoveď od AI

Metóda hashCode() v triede Object v Jave vracia celé číslo (hash kód) objektu, ktoré sa používa napríklad v hash tabuľkách (HashMap, HashSet) na rýchle vyhľadávanie.

Podľa zmluvy, ak sú dva objekty rovnaké podľa metódy equals(), ich hashCode() musia vracať rovnakú hodnotu. To je dôležité pre správne fungovanie kolekcií založených na hashovaní.

Predvolene hashCode() vracia hodnotu spojenú s adresou objektu v pamäti, ale často je táto metóda prepísaná tak, aby zohľadňovala obsah objektu.

Príklad prepísania:

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

Týmto spôsobom hashCode() pomáha efektívne indexovať objekty v kolekciách.