logo

Přepsat se rovná metodě v Javě

K porovnání dvou objektů se používá metoda equals() třídy objektů, která přijímá objekt a také jej porovnává s aktuálním objektem. Pokud byly odkazy na tyto dva objekty stejné, metoda vrátí hodnotu true; jinak tomu tak není.

r v c programování

Příklad

Třída Employee v následujícím příkladu má dvě proměnné: jméno a věk a také parametrizovanou funkci Object() { [nativní kód] }.

Pomocí metody equals() vytvoříme dva objekty z hlavní metody poskytnutím identických dat a porovnáním výsledků.

Tento software vrací hodnotu false, protože metoda equals() třídy Object vrací hodnotu true pouze v případě, že jsou odkazy na objekty totožné.

Příklad kódu pro přepsání metody rovná se:

EqualsExpl.java

bublina třídit python
 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); } } 

Výstup:

Přepsat se rovná metodě v Javě

Přepsání metody equals().

Můžete si vyvinout vlastní verzi metody rovná se, protože objekt je skutečně nadtřídou pro všechny třídy v Javě.

Příklad kódu:

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); } } 

Výstup:

Přepsat se rovná metodě v Javě