We kunnen de elementen sorteren van:
- String-objecten
- Wrapper-klasseobjecten
- 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