Wie sortiere ich Objekte in ArrayList in Java nach Datum

Asad Riaz 12 Oktober 2023
  1. comparable<> Methode zum Sortieren von Objekten in ArrayList nach Datum in Java
  2. collections.sort() Methode zum Sortieren von Objekten in ArrayList nach Datum in Java
  3. list.sort() Methode zum Sortieren von Objekten in einer ArrayList nach Datum in Java
Wie sortiere ich Objekte in ArrayList in Java nach Datum

Wir haben mehrere Methoden, um Objekte in ArrayList in Java nach Datum zu sortieren. Diese Sortierung kann auf der Grundlage des Datums oder einer anderen Bedingung erfolgen. Zum Beispiel die Methoden comparable<>, Collections.sort() und list.sort().

comparable<> Methode zum Sortieren von Objekten in ArrayList nach Datum in Java

Die erste Methode arbeitet, indem sie das Objekt comparable<> macht, zusammen mit der Verwendung der Klassen compareTo(), compare() und collections.sort(). Wir werden eine neue Klasse des Objekts DateItem erstellen und die Schnittstelle Comparator<DateItem> implementieren, um das Array zu sortieren.

Beispiel-Codes:

import java.util.*;

public class SimpleTesing {
  static class DateItem {
    String datetime;

    DateItem(String date) {
      this.datetime = date;
    }
  }

  static class SortByDate implements Comparator<DateItem> {
    @Override
    public int compare(DateItem a, DateItem b) {
      return a.datetime.compareTo(b.datetime);
    }
  }

  public static void main(String args[]) {
    List<DateItem> dateList = new ArrayList<>();
    dateList.add(new DateItem("2020-03-25"));
    dateList.add(new DateItem("2019-01-27"));
    dateList.add(new DateItem("2020-03-26"));
    dateList.add(new DateItem("2020-02-26"));
    Collections.sort(dateList, new SortByDate());
    dateList.forEach(date -> { System.out.println(date.datetime); });
  }
}

Ausgabe:

2019-01-27
2020-02-26
2020-03-25
2020-03-26 

collections.sort() Methode zum Sortieren von Objekten in ArrayList nach Datum in Java

Die Methode collections.sort() könnte die Sortierung nach Datum in einer ArrayList durchführen.

Beispiel-Codes:

import java.util.*;

public class SimpleTesting {
  public static void main(String[] args) {
    List<String> dateArray = new ArrayList<String>();
    dateArray.add("2020-03-25");
    dateArray.add("2019-01-27");
    dateArray.add("2020-03-26");
    dateArray.add("2020-02-26");
    System.out.println("The Object before sorting is : " + dateArray);
    Collections.sort(dateArray);
    System.out.println("The Object after sorting is : " + dateArray);
  }
}

Ausgabe:

The Object before sorting is : [2020-03-25, 2019-01-27, 2020-03-26, 2020-02-26]
The Object after sorting is : [2019-01-27, 2020-02-26, 2020-03-25, 2020-03-26]

list.sort() Methode zum Sortieren von Objekten in einer ArrayList nach Datum in Java

Die list.sort() Methode von Java kombiniert mit einem Lambda-Ausdruck, um die Sortierung nach Datum in einer ArrayList durchzuführen.

Beispiel-Codes:

import java.util.*;

public class SimpleTesting {
  public static void main(String[] args) {
    List<String> dateArray = new ArrayList<String>();
    dateArray.add("2020-03-25");
    dateArray.add("2019-01-27");
    dateArray.add("2020-03-26");
    dateArray.add("2020-02-26");
    System.out.println("The Object before sorting is : " + dateArray);
    dateArray.sort((d1, d2) -> d1.compareTo(d2));
    System.out.println("The Object after sorting is : " + dateArray);
  }
}

Ausgabe:

The Object before sorting is : [2020-03-25, 2019-01-27, 2020-03-26, 2020-02-26]
The Object after sorting is : [2019-01-27, 2020-02-26, 2020-03-25, 2020-03-26]

Verwandter Artikel - Java ArrayList