Metoda Java Object equals () kontroluje, zda jsou dva objekty stejné.
Syntaxe equals()
metody je:
object.equals(Object obj)
equals () Parametry
equals()
Metoda přebírá jeden parametr.
- obj - objekt, který má být porovnán s aktuálním objektem
equals () Návratové hodnoty
- vrátí,
true
pokud jsou dva objekty stejné - vrátí,
false
pokud dva objekty nejsou stejné
Poznámka : Pokud v Javě odkazují dvě referenční proměnné na stejný objekt, jsou si obě referenční proměnné navzájem rovnocenné.
Příklad 1: Java Object equals ()
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 ) )
Ve výše uvedených příkladech jsme vytvořili objekty Object
třídy. Zde se equals()
metoda používá ke kontrole, zda jsou objekty navzájem rovnocenné.
Příklad 2: rovná se () S řetězcem
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 ) )
Ve výše uvedeném příkladu jsme použili equals()
metodu ke kontrole, zda jsou dva objekty obj1 a obj2 stejné.
Zde jsou zpočátku oba nově vytvořené objekty null
. Proto se metoda vrací true
. Když jsme však objektům přiřadili hodnoty. Metoda se vrátí false
.
Je to proto, že třída String přepíše equal()
metodu tak, aby metoda porovnávala prvek objektu. Protože hodnota obj1 a obj2 se liší, metoda se vrátí false
.
Poznámka : Object
Třída je nadtřídou pro všechny třídy v Javě. equals()
Metodu tedy může implementovat každá třída a pole .