LocalDateTime Sortieren
So zu Sortieren LocalDateTime
Objekte?
Ich habe versucht, die folgenden:
Comparator<Data> comparator = new Comparator<Data>() {
@Override
public int compare(final data o1, final data o2) {
if (o1.getDate()== null || o2.getDate() == null)
return 0;
return o1.getDate().compareTo(o2.getDate());
}
};
Collections.sort(comments, comparator);
Nach dem Test ich denke, es sortiert nach dem Datum, sondern die Zeit (HH:MM:SS) ignoriert?
- Bitte eine kurze, aber vollständige Programm demonstriert das problem - idealerweise folgende Java-Namenskonventionen. (Es scheint, dass
data
ist der name eines Typs und einer Variablen im code - das ist unglaublich verwirrend.) Ich würde auch empfehlen, dass, wenngetDate()
ist eine Methode, bei der Rückkehr eineLocalDateTime
, das ist ziemlich schlecht mit Namen...
Du musst angemeldet sein, um einen Kommentar abzugeben.
Beide JodaTime und JDK 8
LocalDateTime
Klassen implementieren dieComparable
- Schnittstelle, so können Sie Sortieren Sie Ihre Natürliche Ordnung. Nur tundata
wird sofort geändert. Keine Notwendigkeit, neu zuordnen das Ergebnis.Check-out isAfter() und isBefore(). Klicken Sie für die Docs.
Und vielleicht versuchen Sie die Arbeit an Ihrem Einzug, war ich ein wenig unsicher, was innerhalb der if-Klausel. Vielleicht sogar versuchen, verwenden Sie geschweifte Klammern {} auch fore one-Liner, aber das ist eine Frage der persönlichen Vorliebe.