Junior — Middle
Jak je v Javě realizováno porovnání objektů na rovnost pomocí operátoru ==?
sobes.tech AI
Odpověď od AI
V jazyce Java operátor == při porovnávání objektů kontroluje, zda obě proměnné odkazují na stejný objekt v paměti, tedy porovnává reference a nikoli obsah objektů.
Pokud chcete porovnat obsah objektů, používá se metoda equals(), kterou lze přepsat ve třídě pro definování logiky porovnání.
Příklad:
String a = new String("test");
String b = new String("test");
System.out.println(a == b); // false, různé objekty
System.out.println(a.equals(b)); // true, obsah je stejný
Tedy, operátor == u objektů kontroluje rovnost referencí, nikoli hodnot.