Ejemplo de otros tipos de equivalencia
La equivalencia puede depender de las propiedades algebráicas del tipo de objeto de que se trate. Por ejemplo:
Fraccion.java |
public
class Fraccion { private int num; private int den; @Override public boolean equals(Object x) { if (x == this) return true; if (x == null) return false; if (x.getClass() != this.getClass()) return false; Fraccion fraccion = (Fraccion)x; return this.num * fraccion.den ==
this.den * fraccion.num; } @Override public int hashCode() { return num ^ den; } } |
Regla: si redefine equals(), debe redefinir hashCode()
Temas relacionados
63. equals (método) public boolean equals(Object)