Egalitatea
HashCode nu înseamnă că egal returnează adevărat. Contractul este că două obiecte care sunt egale trebuie să aibă același cod hash. Dar NU precizează că cele două obiecte cu același HashCode trebuie să fie egale.
Metoda equals folosește hashCode?
Când vorbim despre metoda egalității, scopul principal este de a compara starea a două obiecte sau conținutul obiectului.
Egals folosește hashCode C?
Deoarece cadru necesită ca două obiecte care sunt aceleași trebuie să aibă același cod hash. Dacă înlocuiți metoda equals pentru a face o comparație specială a două obiecte și cele două obiecte sunt considerate la fel de către metodă, atunci codul hash al celor două obiecte trebuie să fie, de asemenea, același.
Pentru ce este hashCode și echivalentul folosit?
Metoda hashcode returnează aceeași valoare hash atunci când sunt apelate pe două obiecte, care sunt egale conform metodei equals. Și dacă obiectele sunt inegale, de obicei returnează valori hash diferite.
HashMap folosește hashCode sau echivalent?
Puteți înlocui acest lucru în cursul dvs. pentru a vă oferi propria implementare. HashMap folosește equals pentru a compara cheia indiferent dacă sunt egale sau nu. Dacă metoda equals returnează adevărat, ele sunt egale, altfel nu sunt egale. O singură găleată poate avea mai multe noduri, depinde de metoda hashCode.