Set strange behaviour. What am i missing ?
publicclass FileDataimplements Comparable{
Fichero ficheroInfo;
File file;
private Date lastRegistryInsertionTime;
//...
@Override
publicboolean equals(Object obj){
if (!(objinstanceof FileData) )returnfalse;
Fichero ficheroInfo2 = ((FileData)obj).getFicheroInfo();
File file2 = ((FileData)obj).getFile();
Date date2 = ((FileData)obj).getLastRegistryInsertionTime();
return (ficheroInfo2 ==null && ficheroInfo ==null ) || (ficheroInfo2.equals(ficheroInfo)) &&
(file2==null && file2 ==null ) || (file2.equals(file2)) &&
(date2==null && date2 ==null ) || (date2.equals(date2)) ;
}
@Override
publicint hashCode(){
return 100;
}
//.....
// files is a filled TreeSet<FileData>
assertEquals( files.iterator().next(),new FileData(f1,fichero) );// ->TRUE
assertTrue( files.contains(new FileData(f1,fichero)));// -> FALSE

