Reihenfolge einer Liste umdrehen

Eine Liste umdrehen, etwa weil man sie z.B. verkehrt ausgeben möchte, ist in Java keine große Kunst. Wenn die Liste selbst verändert werden darf bietet Java in der Klasse java.util.Collections eine einfache Methode.

Inhaltsverzeichnis

Die Liste selbst umdrehen

Darf die Liste selbst verändert werden, ist das umkehren der Reihenfolge mit der Methode Collections.reverse() ein Einzeiler:

List<String> beerList = new ArrayList<>(Arrays.asList("Egger",
        "Frastanzer", "Forhrenburger", "Mohrenbräu", "Sternbräu"));
Collections.reverse(beerList);
System.out.println(beerList);
//[Sternbräu, Mohrenbräu, Forhrenburger, Frastanzer, Egger]

Will man nicht, dass die ursprüngliche Liste verändert wird, muss man zu einer Lösung mit einer Schleife greifen.

Elemente umgekehrt in neue Liste einfügen

Ist es nicht gewünscht die ursprüngliche Liste zu ändern oder ist diese unveränderlich, wird einfach eine neue Liste mit der gleichen Größe erstellt. Die naive einfache Lösung könnte folgendermaßen aussehen:

List<String> beerList = new ArrayList<>(Arrays.asList("Egger",
        "Frastanzer", "Forhrenburger", "Mohrenbräu", "Sternbräu"));
List<String> verkehrt = new ArrayList<>(beerList.size());
for (int i = beerList.size()-1; i >= 0 ; i--) {
    verkehrt.add(beerList.get(i));
}
System.out.println(verkehrt);
//[Sternbräu, Mohrenbräu, Forhrenburger, Frastanzer, Egger]

Ähnliche Artikel