logo

Ordinamento nella raccolta

Possiamo ordinare gli elementi di:

  1. Oggetti stringa
  2. Oggetti di classe wrapper
  3. Oggetti di classe definiti dall'utente
Collezioni La classe fornisce metodi statici per ordinare gli elementi di una raccolta. Se gli elementi della raccolta sono di tipo Set, possiamo utilizzare TreeSet. Tuttavia, non possiamo ordinare gli elementi di List. La classe Collections fornisce metodi per ordinare gli elementi di tipo List.

Metodo della classe Collections per l'ordinamento degli elementi dell'elenco

public void sort(Lista elenco): viene utilizzato per ordinare gli elementi di List. Gli elementi dell'elenco devono essere di tipo Comparabile.

Nota: la classe String e le classi Wrapper implementano l'interfaccia Comparable. Pertanto, se memorizzi gli oggetti delle classi string o wrapper, sarà comparabile.

Esempio per ordinare oggetti stringa

 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()); } } } 
Provalo adesso
 Mukesh Saurav Tahir Viru 

Esempio per ordinare gli oggetti stringa in ordine inverso

 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 

Esempio per ordinare gli oggetti della 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 

Esempio per ordinare gli oggetti della classe definita dall'utente

 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