0 votos

Hola, tengo un pequeno problema con mi programa. Estoy intentando comparar 2 fechas.
Pero cuando uso compareTo me dice que no existe el metodo.

private class dateComparator implements Comparator{
public int compare(Object o1,Object o2){

MessageCrypte ms1 = (MessageCrypte) o1;
MessageCrypte ms2 = (MessageCrypte) o2;

return ms1.getDate().compareTo(ms2.getDate());

}

}

Tengo un ArrayList de una clase que se llama MesageCrypte y unos de los atributos de esta clase es la fecha. Por eso tengo que usar el getDate().

private ArrayList<MessageCrypte> boiteReception = new ArrayList<>();

Lo quiero implementar en el siguiente metodo

public void ordonnerMsgRecusParDate(){

Collections.sort(boiteReception,new dateComparator());

}

Tendran alguna idea porque no funciona?
 

Gracias de antemano

preguntado por Juan Carlos Dic 22, 2014 en Java

1 Respuesta

0 votos
Mejor respuesta

Hola Juan,

Se me ocurre que tu método getDate() no te esté devolviendo un tipo Date válido. EL objeto que te tiene que devolver para poder utilizar el método compareTo() es un tipo Date como sigue en: http://docs.oracle.com/javase/7/docs/api/java/util/Date.html

Luego para el Comparator puedes mirar como lo hacemos en http://jarroba.com/ordenar-un-arraylist-en-java/

respondido por Jarroba [Admin] Dic 22, 2014