Metoda Java Object equals () provjerava jesu li dva objekta jednaka.
Sintaksa equals()
metode je:
object.equals(Object obj)
je jednako () parametrima
equals()
Postupak ima jedan parametar.
- obj - objekt koji treba usporediti sa trenutnim objektom
jednako () Povratne vrijednosti
- vraća
true
ako su dva objekta jednaka - vraća
false
ako dva objekta nisu jednaka
Napomena : U Javi, ako se dvije referentne varijable odnose na isti objekt, tada su dvije referentne varijable jednake jedna drugoj.
Primjer 1: Java objekt je jednak ()
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 ) )
U gornjim primjerima stvorili smo objekte Object
klase. Ovdje se equals()
metoda koristi za provjeru jesu li objekti međusobno jednaki.
Primjer 2: jednako () sa nizom
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 ) )
U gornjem primjeru equals()
metodom smo provjerili jesu li dva objekta obj1 i obj2 jednaka.
Ovdje su u početku oba novostvorena objekta null
. Stoga se metoda vraća true
. Međutim, kada smo objektima dodijelili vrijednosti. Metoda se vraća false
.
To je zato što klasa String nadjačava equal()
metodu tako da metoda uspoređuje element objekta. Budući da su vrijednosti obj1 i obj2 različite, metoda se vraća false
.
Napomena : Object
Razred je superrazred za sve razrede u Javi. Dakle, svaka klasa i nizovi mogu implementirati equals()
metodu.