logo

Tri dans la collection

On peut trier les éléments de :

  1. Objets chaîne
  2. Objets de classe Wrapper
  3. Objets de classe définis par l'utilisateur
Collections La classe fournit des méthodes statiques pour trier les éléments d'une collection. Si les éléments de la collection sont de type Set, nous pouvons utiliser TreeSet. Cependant, nous ne pouvons pas trier les éléments de List. La classe Collections fournit des méthodes pour trier les éléments des éléments de type List.

Méthode de classe Collections pour trier les éléments de la liste

tri public void (liste): est utilisé pour trier les éléments de List. Les éléments de liste doivent être du type Comparable.

Remarque : Les classes String et Wrapper implémentent l'interface Comparable. Donc, si vous stockez les objets de classes de chaîne ou de wrapper, ce sera Comparable.

Exemple pour trier les objets chaîne

 import java.util.*; class TestSort1{ public static void main(String args[]){ ArrayList al=new ArrayList(); al.add('Viru'); al.add('Saurav'); al.add('Mukesh'); al.add('Tahir'); Collections.sort(al); Iterator itr=al.iterator(); while(itr.hasNext()){ System.out.println(itr.next()); } } } 
Testez-le maintenant
 Mukesh Saurav Tahir Viru 

Exemple pour trier les objets chaîne dans l'ordre inverse

 import java.util.*; class TestSort2{ public static void main(String args[]){ ArrayList al=new ArrayList(); al.add('Viru'); al.add('Saurav'); al.add('Mukesh'); al.add('Tahir'); Collections.sort(al,Collections.reverseOrder()); Iterator i=al.iterator(); while(i.hasNext()) { System.out.println(i.next()); } } } 
 Viru Tahir Saurav Mukesh 

Exemple pour trier les objets de la classe Wrapper

 import java.util.*; class TestSort3{ public static void main(String args[]){ ArrayList al=new ArrayList(); al.add(Integer.valueOf(201)); al.add(Integer.valueOf(101)); al.add(230);//internally will be converted into objects as Integer.valueOf(230) Collections.sort(al); Iterator itr=al.iterator(); while(itr.hasNext()){ System.out.println(itr.next()); } } } 
 101 201 230 

Exemple pour trier les objets de classe définis par l'utilisateur

 import java.util.*; class Student implements Comparable { public String name; public Student(String name) { this.name = name; } public int compareTo(Student person) { return name.compareTo(person.name); } } public class TestSort4 { public static void main(String[] args) { ArrayList al=new ArrayList(); al.add(new Student('Viru')); al.add(new Student('Saurav')); al.add(new Student('Mukesh')); al.add(new Student('Tahir')); Collections.sort(al); for (Student s : al) { System.out.println(s.name); } } } 
 Mukesh Saurav Tahir Viru