Junior — Middle
Kako metoda equals vrši poređenje dva objekta u Javi?
sobes.tech АИ
Одговор од АИ
Metoda equals u Javi se koristi za poređenje dva objekta na smisleno jednakost. Po default-u, ako nije prepisana, ona poredi reference (tj. proverava da li objekti ukazuju na isti primerak).
Prilikom prepisivanja equals, obično poređujemo sadržaj objekata, na primer, vrednosti polja.
Tipična implementacija equals uključuje:
- Proveru na jednakost referenci (
this == obj) - Proveru na
nulli kompatibilnost klasa - Poređenje značajnih polja objekata
Primer:
@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) && field2 == other.field2;
}
Takođe je važno prepisati hashCode kada prepisujete equals, kako biste sačuvali ugovor između ovih metoda.