Collections Framework

novato
20 de Abril del 2006
Hola soy relativamente nuevo en Java y totalmente desconocedor del java collections framework. Necesito para una práctica crear un TreeSet con un comparador para introducir en el TreeSet objetos de una clase alumno ordenados por el DNI. Por lo que he creido comprender al añadir un objeto al TreeSet este llama al metodo equals del objeto para comprobar si ese objeto ya pertenece al conjunto. Sin embargo a mi no me hace eso sino que a mi me llama al metodo compare del comparador y solo si este devuelve cero no deja añadir el objeto al conjunto. ¿Es cierto que el metodo add del TreeSet llama a equals del objeto añadir o tengo que llamar yo a equals desde el metodo compare del comparador?

nicokiki
20 de Abril del 2006
Hola!!!!

Es logico q compare con compare() o compareTo() (no me acuerdo cual de los dos....) porque el equals solo indica si dos objetos son iguales pero no dice quien es menor, mayor o igual.....
El TreeSet matiene los elementos ordenados y si vos queres agregar uno que ya esta (el compare es igual a cero) entonces tenes q sacar el anterior y poner el nuevo...

Salu2!!!

toni
20 de Abril del 2006
Tienes que usar compareTo()