Comparator y comparable en java
Toda colección que ordene sus elementos en orden natural, hace uso de estas características para poder compararlos. Comparator/Comparable
definen la forma en la que un objeto se compara de manera "natural". String implementa Comparable
es por eso que TreeSet<String>
ordena las cadenas de forma alfabetica (natural).
Ejemplos de clases en java que hacen uso de elementos comparables son: TreeSet, TreeMap
, elementos de una lista si se desea ordenarlos con Collections.sort
.
Indica que un objeto es comparable, la clase lo debe implementar para indicar que el objeto puede ser comparado.
Compara 2 objetos, es muy similar a Comparable
sólo que este se define fuera de la clase pues sirve para indicar la comparación entre dos objetos.