Alphabetische Sortierung einer Liste in Java

Mohammad Irfan 12 Oktober 2023
  1. Sortieren einer Liste mit der Methode Collections.sort() in Java
  2. Sortieren einer Liste mit der Methode list.stream().sorted() in Java 8
  3. Sortieren einer Liste mit der Guava-Bibliothek in Java
  4. Sortieren einer Liste mit dem Comparator.naturalOrder() in Java
  5. Sortieren einer Liste mit der Klasse String in Java
Alphabetische Sortierung einer Liste in Java

Dieses Tutorial stellt vor, wie Sie eine Liste von Elementen in Java alphabetisch sortieren.

List ist ein linearer Datentyp, der verwendet wird, um Elemente eines ähnlichen Typs in Java zu speichern. In Java ist List eine Schnittstelle und ArrayList ist ihre Implementierungsklasse.

Wir können eine Liste auf verschiedene Arten sortieren: Collections-Klasse, String-Klasse, Google Guava-Bibliothek usw. Lassen Sie uns anhand einiger Beispiele verstehen.

Sortieren einer Liste mit der Methode Collections.sort() in Java

Die Collections ist eine Klasse im Paket java.util, die mehrere Methoden zum Sammeln von Daten bereitstellt. Es bietet eine sort()-Methode zum Sortieren der Listenelemente.

Hier haben wir diese Methode verwendet, um die Liste alphabetisch zu sortieren. Siehe das Beispiel unten.

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

public class SimpleTesting {
  public static void main(String[] args) {
    List<String> list = new ArrayList<>();
    list.add("India");
    list.add("US");
    list.add("China");
    list.add("Russia");
    list.add("Australia");
    System.out.println(list);
    Collections.sort(list);
    System.out.println("-----------Sorted List------------");
    System.out.println(list);
  }
}

Ausgabe:

[India, US, China, Russia, Australia]
-----------Sorted List------------
[Australia, China, India, Russia, US]

Die sort()-Methode hat eine überladene Version, die ein zusätzliches Argument benötigt, um Elemente ohne Berücksichtigung der Groß-/Kleinschreibung zu sortieren. Sehen Sie sich das Beispiel unten an, in dem wir diese Methode verwendet haben, und sie funktioniert gut.

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

public class SimpleTesting {
  public static void main(String[] args) {
    List<String> list = new ArrayList<>();
    list.add("India");
    list.add("US");
    list.add("China");
    list.add("Russia");
    list.add("Australia");
    System.out.println(list);
    Collections.sort(list, String.CASE_INSENSITIVE_ORDER);
    System.out.println("-----------Sorted List------------");
    System.out.println(list);
  }
}

Ausgabe:

[India, US, China, Russia, Australia]
-----------Sorted List------------
[Australia, China, India, Russia, US]

Sortieren einer Liste mit der Methode list.stream().sorted() in Java 8

Verwenden Sie das folgende Codebeispiel, wenn Sie mit Java 8 oder höher arbeiten. Hier haben wir die Stream-API verwendet, um die Elemente zu sortieren.

Siehe das Beispiel unten.

import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;

public class SimpleTesting {
  public static void main(String[] args) {
    List<String> list = new ArrayList<>();
    list.add("India");
    list.add("US");
    list.add("China");
    list.add("Russia");
    list.add("Australia");
    System.out.println(list);
    list = list.stream().sorted().collect(Collectors.toList());
    System.out.println("-----------Sorted List------------");
    System.out.println(list);
  }
}

Ausgabe:

[India, US, China, Russia, Australia]
-----------Sorted List------------
[Australia, China, India, Russia, US]

Sortieren einer Liste mit der Guava-Bibliothek in Java

Neben dem Paket java.util können wir die Bibliothek guava verwenden, um die Listenelemente zu sortieren. Google stellt diese Guave-Bibliothek zur Verfügung, um an Datensammlungen zu arbeiten.

Wir haben die Klasse Ordering und ihre Methode natural() verwendet, um die Elemente in natürlich sortierter Reihenfolge zu erhalten. Siehe das Beispiel unten.

import com.google.common.collect.Ordering;
import java.util.ArrayList;
import java.util.List;

public class SimpleTesting {
  public static void main(String[] args) {
    List<String> list = new ArrayList<>();
    list.add("India");
    list.add("US");
    list.add("China");
    list.add("Russia");
    list.add("Australia");
    System.out.println(list);
    list = Ordering.natural().sortedCopy(list);
    System.out.println("-----------Sorted List------------");
    System.out.println(list);
  }
}

Ausgabe:

[India, US,China, Russia, Australia]
-----------Sorted List------------
[Australia, China, India, Russia, US]

Sortieren einer Liste mit dem Comparator.naturalOrder() in Java

In diesem Beispiel haben wir Comparator verwendet, um die Liste in einer natürlichen Reihenfolge zu erhalten. Wir haben die Methode naturalOrder() an die Methode list.sort() übergeben.

Siehe das Beispiel unten.

import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;

public class SimpleTesting {
  public static void main(String[] args) {
    List<String> list = new ArrayList<>();
    list.add("India");
    list.add("US");
    list.add("China");
    list.add("Russia");
    list.add("Australia");
    System.out.println(list);
    list.sort(Comparator.naturalOrder());
    System.out.println("-----------Sorted List------------");
    System.out.println(list);
  }
}

Ausgabe:

[India, US, China, Russia, Australia]
-----------Sorted List------------
[Australia, China, India, Russia, US]

Sortieren einer Liste mit der Klasse String in Java

Wenn Sie die Groß- und Kleinschreibung von Strings beim Sortieren von Listenelementen ignorieren möchten, verwenden Sie die Methoden compareToIgnoreCase() und method.sort(). Wir haben die Klassen- und Methodenreferenz String verwendet, um die sortierten Listenelemente zu erhalten.

Siehe das Beispiel unten.

import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;

public class SimpleTesting {
  public static void main(String[] args) {
    List<String> list = new ArrayList<>();
    list.add("India");
    list.add("US");
    list.add("China");
    list.add("Russia");
    list.add("Australia");
    System.out.println(list);
    list.sort(String::compareToIgnoreCase);
    System.out.println("-----------Sorted List------------");
    System.out.println(list);
  }
}

Ausgabe:

[India, US, China, Russia, Australia]
-----------Sorted List------------
[Australia, China, India, Russia, US]

Verwandter Artikel - Java List