logo

Razvrščanje v zbirki

Lahko razvrstimo elemente:

  1. Objekti nizov
  2. Objekti razreda ovojnice
  3. Uporabniško definirani objekti razreda
Zbirke ponuja statične metode za razvrščanje elementov zbirke. Če so elementi zbirke vrste Set, lahko uporabimo TreeSet. Vendar elementov seznama ne moremo razvrstiti. Razred Zbirke nudi metode za razvrščanje elementov elementov tipa Seznam.

Metoda razreda Collections za razvrščanje elementov seznama

javna neveljavna razvrstitev (seznam seznama): se uporablja za razvrščanje elementov seznama. Elementi seznama morajo biti primerljive vrste.

Opomba: Razred nizov in razredi Wrapper izvajajo vmesnik Comparable. Če torej shranjujete objekte nizov ali razredov ovoja, bo primerljivo.

Primer razvrščanja nizovnih predmetov

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

Primer razvrščanja objektov nizov v obratnem vrstnem redu

 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 

Primer za razvrščanje predmetov razreda 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 

Primer razvrščanja uporabniško definiranih objektov razreda

 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