logo

Sorteren in collectie

We kunnen de elementen sorteren van:

  1. String-objecten
  2. Wrapper-klasseobjecten
  3. Door de gebruiker gedefinieerde klasseobjecten
Collecties class biedt statische methoden voor het sorteren van de elementen van een verzameling. Als collectie-elementen van het type Set zijn, kunnen we TreeSet gebruiken. We kunnen de elementen van Lijst echter niet sorteren. De klasse Collections biedt methoden voor het sorteren van de elementen van elementen van het type Lijst.

Method of Collections-klasse voor het sorteren van lijstelementen

public void sort (Lijstlijst): wordt gebruikt om de elementen van Lijst te sorteren. Lijstelementen moeten van het type Vergelijkbaar zijn.

Opmerking: String-klasse en Wrapper-klassen implementeren de vergelijkbare interface. Dus als u de objecten van string- of wrapper-klassen opslaat, is deze vergelijkbaar.

Voorbeeld om stringobjecten te sorteren

 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()); } } } 
Test het nu
 Mukesh Saurav Tahir Viru 

Voorbeeld om stringobjecten in omgekeerde volgorde te sorteren

 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 

Voorbeeld om Wrapper-klasseobjecten te sorteren

 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 

Voorbeeld om door de gebruiker gedefinieerde klasseobjecten te sorteren

 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