Metóda Java Object equals () kontroluje, či sú dva objekty rovnaké.
Syntax equals()
metódy je:
object.equals(Object obj)
sa rovná () parametrom
equals()
Metóda preberá jeden parameter.
- obj - objekt, ktorý sa má porovnať s aktuálnym objektom
sa rovná () Návratové hodnoty
- vráti,
true
ak sú dva objekty rovnaké - vráti,
false
ak dva objekty nie sú rovnaké
Poznámka : Ak v Jave odkazujú dve referenčné premenné na ten istý objekt, potom sú dve referenčné premenné navzájom rovnaké.
Príklad 1: Objekt Java rovná sa ()
class Main ( public static void main(String() args) ( // equals() method with Object class // create two objects Object obj1 = new Object(); Object obj2 = new Object(); // check if obj1 and obj2 are equal System.out.println(obj1.equals(obj2)); // false // assign obj1 to obj3 Object obj3 = obj1; System.out.println(obj1.equals(obj3)); // true ) )
Vo vyššie uvedených príkladoch sme vytvorili objekty Object
triedy. Tu sa equals()
metóda používa na kontrolu, či sú si objekty navzájom rovnocenné.
Príklad 2: rovná sa () S reťazcom
class Main ( public static void main(String() args) ( // equals() with String objects // create objects of string String obj1 = new String(); String obj2 = new String(); // check if obj1 and obj2 are equal System.out.println(obj1.equals(obj2)); // true // assign values to objects obj1 = "Java Programming"; obj2 = "Python Programming"; // again check if obj1 and obj2 are equal System.out.println(obj1.equals(obj2)); // false ) )
Vo vyššie uvedenom príklade sme použili equals()
metódu na kontrolu, či sú dva objekty obj1 a obj2 rovnaké.
Tu sú spočiatku oba novo vytvorené objekty null
. Preto sa metóda vráti true
. Keď sme však objektom priradili hodnoty. Metóda sa vráti false
.
Je to preto, že trieda String prepíše equal()
metódu tak, že metóda porovnáva prvok objektu. Pretože hodnoty obj1 a obj2 sú odlišné, metóda sa vráti false
.
Poznámka : Object
Trieda je nadtriedou pre všetky triedy v prostredí Java. Túto equals()
metódu teda môže implementovať každá trieda a polia .