logo

Comment trier une liste en Java

Nous pouvons utiliser les méthodes suivantes pour trier la liste :

document.queryselector
  • Utilisation de la méthode stream.sorted()
  • Utilisation de la méthode Comparator.reverseOrder()
  • Utilisation de la méthode Comparator.naturalOrder()
  • Utilisation de la méthode Collections.reverseOrder()
  • Utilisation de la méthode Collections.sort()

Interface de flux Java

L'interface Java Stream propose deux méthodes pour trier la liste :

méthode triée()

L'interface Stream fournit une méthode sorted() pour trier une liste. Il est défini dans l'interface Stream qui est présente dans paquet java.util . Il renvoie un flux trié selon l'ordre naturel. Si les éléments ne sont pas comparables, il lève java.lang.ClassCastException. La signature de la méthode est :

 Stream sorted() 

Paramètre

T : C’est un type d’élément de flux.

Java Stream.sorted (Comparateur comparateur)

Il renvoie également un flux trié selon le comparateur fourni. Il est stable pour un flux ordonné. La signature de la méthode est :

 Stream sorted(Comparator comparator) 

Paramètres

  • T est le type d'élément de flux.
  • comparateur à utiliser pour comparer des éléments

Exemple

Dans l'exemple suivant, nous avons utilisé les méthodes suivantes :

méthode tostring
  • Dans Java 8, stream() est une API utilisée pour traiter des collections d'objets.
  • La méthode collect() est utilisée pour recevoir des éléments d’un flux et les stocker dans une collection.
  • Le toList() renvoie le collecteur qui collecte tous les éléments d'entrée dans une liste, dans l'ordre de rencontre.

Exemple

 import java.util.*; import java.util.stream.*; public class SortListExample1 { public static void main(String[] args) { //returns a list view List slist = Arrays.asList('Tanu', 'Kamal', 'Suman', 'Lucky', 'Bunty', 'Amit'); List sortedList = slist.stream().sorted().collect(Collectors.toList()); sortedList.forEach(System.out::println); } } 

Sortir:

Comment trier une liste en Java

Méthode Java Comparator.reverseOrder()

Le reverseOrder() est une méthode de l’interface Comparator définie dans le package java.util. La méthode renvoie un comparateur qui impose l'inverse de l'ordre naturel. Il lève NullPointerException lors de la comparaison de null. La signature de la méthode est :

 static <t extends comparable> Comparator reverseOrder() </t>

Comparable est également une interface appartenant à un package java.lang.

Paramètres

T : type d'élément comparable à comparer.

Exemple

 import java.util.*; import java.util.stream.Collectors; public class SortListExample2 { public static void main(String[] args) { //returns a list view List slist = Arrays.asList(&apos;78&apos;, &apos;a&apos;, &apos;m&apos;, &apos;b&apos;, &apos;z&apos;, &apos;c&apos;, &apos;12&apos;, &apos;l&apos;, &apos;1&apos;); ListsortedList=slist.stream().sorted(Comparator.reverseOrder()).collect(Collectors.toList()); sortedList.forEach(System.out::println); } } 

Sortir:

Comment trier une liste en Java

Comparateur Java.naturalOrder()

La méthode renvoie un comparateur qui compare les objets Comparable dans l'ordre naturel. Le comparable renvoyé est sérialisable. Lorsque nous comparons null, cela génère NullPointerException. Il s'agit de Java 8. La signature de la méthode est :

 Static <t extends comparable> Comparator naturalOrder() </t>
  • La méthode trie les éléments par ordre naturel (ordre croissant).
  • Il met null en haut, le cas échéant.
  • Il place les éléments en lettres majuscules en premier dans l'ordre naturel, puis les lettres minuscules dans l'ordre naturel, si la liste contient à la fois des lettres minuscules et des lettres majuscules.

Paramètres

T : Type comparable d’élément à comparer.

Exemple

tutoriel java pour les débutants
 import java.util.*; public class SortListExample3 { public static void main(String[] args) { List country = Arrays.asList(&apos;Russia&apos;, &apos;India&apos;, &apos;China&apos;, &apos;Japan&apos;, &apos;&apos;, &apos;Ghana&apos;); List country1 = Arrays.asList(&apos;Russia&apos;,&apos;india&apos;, &apos;China&apos;, &apos;Japan&apos;, &apos;&apos;, &apos;ghana&apos;); System.out.println(country); //prints the same list as we define country.sort(String.CASE_INSENSITIVE_ORDER); //sorts the list in case insensitive order System.out.println(country1); country.sort(Comparator.naturalOrder()); //sorts list in ascending order System.out.println(country); //sorts list in ascending order (null, capital letter and small letter) country1.sort(Comparator.naturalOrder()); System.out.println(country1); } } 

Sortir:

Comment trier une liste en Java

Méthode Java Collections.reverseOrder()

C'est la méthode de la classe Java Collections qui appartient à un package java.lang. Il renvoie un comparateur qui impose l'inverse de l'ordre naturel. La signature de la méthode est :

 public static Comparator reverseOrder() 

Paramètres

La classe des objets comparés par le comparateur.

long à enfiler

Exemple

 import java.util.Arrays; import java.util.Collections; import java.util.List; public class SortListExample4 { public static void main(String args[]) { List list = Arrays.asList(10,1,-20,40,5,-23,0); Collections.sort(list, Collections.reverseOrder()); System.out.println(list); } } 

Sortir:

Comment trier une liste en Java

Méthode Java Collections.sort()

La classe Collections dispose de deux méthodes pour trier une liste :

méthode trier()

La méthode sort() trie la liste par ordre croissant, selon l'ordre naturel de ses éléments. La signature de la méthode est :

 public static <t extends comparable> void sort() (List list) </t>

Paramètres

T : C’est un paramètre de type.

printemps et printemps mvc

list : La liste à trier.

Voyons un autre exemple de méthode Collections.sorts().

Exemple

 import java.util.*; public class SortListExample5 { public static void main(String[] args) { List sList = new ArrayList(); sList.add(&apos;m&apos;); sList.add(&apos;k&apos;); sList.add(&apos;a&apos;); sList.add(&apos;p&apos;); sList.add(&apos;d&apos;); Collections.sort(sList); //sorts array list for(String str: sList) System.out.print(&apos; &apos;+str); } } 

Sortir:

Comment trier une liste en Java