logo

Rūšiavimas kolekcijoje

Mes galime rūšiuoti elementus iš:

  1. Styginių objektai
  2. Apvyniojimo klasės objektai
  3. Vartotojo apibrėžti klasės objektai
Kolekcijos klasėje pateikiami statiniai kolekcijos elementų rūšiavimo metodai. Jei rinkinio elementai yra Set tipo, galime naudoti TreeSet. Tačiau negalime rūšiuoti sąrašo elementų. Kolekcijų klasėje pateikiami Sąrašo tipo elementų elementų rūšiavimo metodai.

Sąrašo elementų rūšiavimo klasės rinkinių metodas

viešas tuščias rūšiavimas (sąrašo sąrašas): naudojamas sąrašo elementams rūšiuoti. Sąrašo elementai turi būti palyginamo tipo.

Pastaba: Eilučių klasė ir Įvyniojimo klasės įgyvendina palyginamąją sąsają. Taigi, jei saugosite eilučių ar įvyniojimo klasių objektus, jie bus palyginami.

Eilučių objektų rūšiavimo pavyzdys

 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()); } } } 
Išbandykite dabar
 Mukesh Saurav Tahir Viru 

Pavyzdys, kaip rūšiuoti eilučių objektus atvirkštine tvarka

 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 

Wrapper klasės objektų rūšiavimo pavyzdys

 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 

Pavyzdys, kaip rūšiuoti vartotojo apibrėžtus klasės objektus

 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