logo

Metoda Override equals în Java

Metoda equals() a clasei de obiecte, care acceptă un obiect și îl compară cu obiectul curent, este utilizată pentru a compara două obiecte. Dacă referințele la aceste două obiecte au fost egale, metoda returnează true; altfel, nu.

Exemplu

Clasa Employee din următorul exemplu are două variabile: nume și vârstă, precum și o funcție parametrizată Object() { [cod nativ] }.

Folosind metoda equals(), creăm două obiecte din metoda principală, dând date identice și comparând rezultatele.

Acest software returnează false deoarece metoda equals() a clasei Object returnează adevărat numai dacă referințele la obiecte sunt identice.

Exemplu de cod pentru suprascrierea metodei equals:

EqualsExpl.java

 import java.util.Scanner; class Student { private String n; private int a; Student(String n, int a){ this.n = n; this.a = a; } } public class EqualsExpl { public static void main(String[] args) { Student s1 = new Student('Sonoo', 19); Student s2 = new Student('Jaiswal', 19); // Comparing the two instances boolean bool = s1.equals(s2); System.out.println(bool); } } 

Ieșire:

Metoda Override equals în Java

Suprascrierea metodei equals().

Puteți dezvolta propria versiune a metodei equals, deoarece Obiectul este într-adevăr superclasa pentru toate Clasele în Java.

Exemplu de cod:

EqualsExpl1.java

 class Student { private String n; private int a; Student(String n, int a){ this.n = n; this.a = a; } public boolean equals(Object o) { if (o == this) { return true; } if (!(o instanceof Student)) { return false; } Student s = (Student) o; return n.equals(s.n)&& Integer.compare(a, s.a) == 0; } } public class EqualsExpl1 { public static void main(String[] args) { Student s1 = new Student('Sonoo', 19); Student s2 = new Student('Jaiswal', 19); //Comparing the two instances boolean bool = s1.equals(s2); System.out.println(bool); } } 

Ieșire:

Metoda Override equals în Java