logo

Ordenant a la col·lecció

Podem ordenar els elements de:

  1. Objectes de corda
  2. Objectes de classe wrapper
  3. Objectes de classe definits per l'usuari
Col·leccions class proporciona mètodes estàtics per ordenar els elements d'una col·lecció. Si els elements de la col·lecció són de tipus Set, podem utilitzar TreeSet. Tanmateix, no podem ordenar els elements de List. La classe Col·leccions proporciona mètodes per ordenar els elements dels elements de tipus Llista.

Mètode de la classe Col·leccions per ordenar els elements de la llista

public void sort (llista de llista): s'utilitza per ordenar els elements de List. Els elements de la llista han de ser del tipus Comparable.

Nota: la classe String i les classes Wrapper implementen la interfície Comparable. Per tant, si emmagatzemeu els objectes de les classes de cadena o embolcall, serà Comparable.

Exemple per ordenar objectes de cadena

 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()); } } } 
Prova-ho ara
 Mukesh Saurav Tahir Viru 

Exemple per ordenar objectes de cadena en ordre invers

 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 per ordenar objectes de 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 per ordenar objectes de classe definits per l'usuari

 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