Lahko razvrstimo elemente:
- Objekti nizov
- Objekti razreda ovojnice
- 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