Si implemento java.lang.Comparable
para una clase, ¿todavía tengo que anular el método equals()
? ¿O también funcionará el Comparable
para equals
?java.lang.Comparable e iguala
Si la respuesta es no, ¿qué pasa si surge alguna discrepancia? Digamos que la forma en que denomino dos objetos como iguales dentro del método equals()
es diferente de la forma en que denomino dos objetos de la misma clase como iguales dentro del compareTo()
del Comparable
.
Además, si implemento Comparable
, ¿también tengo que anular equals()
?
+1 Aquí hay un enlace a los capítulos correspondientes de Java eficaz (véase el punto 11) http://java.sun.com/developer/Books/effectivejava/Chapter3.pdf – MByD
@MByD Gracias por el enlace. ¡(Como era de esperar) lo dice mejor que yo! – dlev
@MbyD gracias por el enlace. ¿Está bien para llamar a.comparar a (b) o comparar() directamente? – aps