Ich habe derzeit ein Array mit Objekten namens "People". Jeder hat einen Namen, Tag, Monat, Jahr (der Geburt). Ich möchte diese in Datumsangaben konvertieren und die .isAfter() -Methode verwenden, um sie zu vergleichen und auf sie zurückzugreifen, aber sie werden nicht nach Datum sortiert. Hier ist eine einfachere Version des CodesIch habe ein Array von Objekten und jedem Objekt wurde ein Datum zugewiesen. Wie kann ich diese Objekte in der Reihenfolge des Datums sortieren?
for (int i = 0; i<peopleArray.size()-1; i++)
{
for (int j = 0; j<peopleArray.size()-1; j++)
{
LocalDate firstDate = LocalDate.of(Integer.parseInt(peopleArray.get(i).getDOBYear()),
Integer.parseInt(peopleArray.get(i).getDOBMonth()),
Integer.parseInt(peopleArray.get(i).getDOBDay()));
LocalDate secondDate= LocalDate.of(Integer.parseInt(peopleArray.get(j).getDOBYear()),
Integer.parseInt(peopleArray.get(j).getDOBMonth()),
Integer.parseInt(peopleArray.get(j).getDOBDay()));
if(firstDate.isAfter(secondDate))
{
Person temp = peopleArray[i];
peopleArray[i] = peopleArray[i+1];
peopleArray[i+1] = temp;
}
}
}
'Person' ist der Name des Objekts. Vielen Dank für Ihre Hilfe im Voraus!
schreiben Vergleichbare Implementierung und übergeben Sie diese an die Collections.sort-Methode. – duffymo
Dieser Beitrag kann helfen zu klären, was @duffymo bedeutet http://StackOverflow.com/Questions/5927109/Sort-Objects-in-arraylist-by-Date – Michael