Java - Allgemein

equals und hashcode

Die Methode equals dient dem Vergleich von zwei Objekten (genauer: der inhaltlichen Gleichheit).
Der Vergleich ist immer eindeutig.
die Methode hascode erzeugt einen int-Wert, welcher das Objekt repräsentiert, aber nicht zwangsweise eindeutig ist. Zwei Objekte mit dem selben hashcode sind wahrscheinlich gleich aber nicht sicher. Diese Methode muss schnell funktionieren und wird in den Hash…-Klassen verwendet.

public class Persond {
   public String lastname;
   public String firstname;
}
 
@Override
public boolean equals(Object obj) {
   if (obj == null || !(obj instanceof Identity))
      return false;
   return lastname.equals(((Person) obj).lastname) && firstname.equals(((Person) obj).firstname);
}
 
@Override
public int hashCode() {
   int n = 0;
   for (int i = 0; i < lastname.length(); i++)
      n += lastname.charAt(i);
   return n;
}




Stichworte:

java equals hashcode

Eigene Werkzeuge
Werkzeuge

gratis Counter by GOWEB
seit 9.10.2007