Junior — Middle
Come confronta il metodo equals due oggetti in Java?
sobes.tech AI
Risposta dell'AI
Il metodo equals in Java viene utilizzato per confrontare due oggetti in base alla loro uguaglianza semantica. Per impostazione predefinita, se non viene sovrascritto, confronta i riferimenti (cioè verifica se gli oggetti puntano allo stesso esempio).
Quando si sovrascrive equals, di solito si confrontano i contenuti degli oggetti, ad esempio i valori dei campi.
Una tipica implementazione di equals include:
- Verifica di uguaglianza dei riferimenti (
this == obj) - Verifica di
nulle compatibilità delle classi - Confronto dei campi significativi degli oggetti
Esempio:
@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;
}
È anche importante sovrascrivere hashCode quando si sovrascrive equals, per mantenere il contratto tra questi metodi.