Junior — Middle
De ce este recomandat în Java să folosiți metoda equals în loc de operatorul == pentru compararea obiectelor?
sobes.tech AI
Răspuns de la AI
În Java, operatorul == compară referințele către obiecte, adică verifică dacă două variabile indică același obiect în memorie. Metoda equals() este destinată pentru compararea conținutului obiectelor, adică egalitatea lor logică.
De exemplu, pentru două obiecte String diferite cu același text, == va returna false, iar equals() — true:
String a = new String("test");
String b = new String("test");
System.out.println(a == b); // false, obiecte diferite
System.out.println(a.equals(b)); // true, conținut identic
Prin urmare, pentru verificarea egalității valorilor obiectelor, se recomandă utilizarea equals(), pentru a compara în mod specific conținutul, nu referințele.