Automatically Sort Vector Elements

Vector class in java.util package is very easy to use. You can add objects of any type in a vector.

You don’t have to worry about declaring the size of the vector. You can just keep adding elements to your object and the vector will dynamically adjust the size. The vector will add elements one after other and will keep them in the order in which your insert them. It means that the elements in the vector are not sorted. Sometimes you need to sort elements in a vector. The Vector class does not offer any sorting mechanism. I created a subclass to sort elements in a vector.
It works with any class that implements Comparable interface or has a Compartor method. If you want elements of your own class sorted in a vector you will need to either make your class implement Comparable or create a Comparator method.

 
public class SortedVector extends Vector{
public SortedVector(){
super();
}
public void addElement(Object o){
super.addElement(o);
Collections.sort(this);
}
}

Here is a sample program showing how to use this class.

public static void main(String args[]){
SortedVector v =new SortedVector();
v.addElement(new Double(12));
v.addElement(new Double(320));
v.addElement(new Double(21));
System.out.println(v);
}

The output from this program is [12.0, 21.0, 320.0].

Share and Enjoy:
  • StumbleUpon
  • Digg
  • del.icio.us
  • Reddit
  • Sphinn
  • blinkbits
  • NewsVine
  • Smarking

If you enjoyed this post, make sure you subscribe to my RSS feed!


Related Posts:

  • Extract substring from end of a Java String
  • How to add external jar files to Maven project POM
  • Import static elements for more readable Java code
  • Test your Java skills.
  • Three ways to find minimum and maximum values in a Java array.
  • 1 Response

    1. Raghunandan:

      I liked this tip very much

      Posted on January 8th, 2008 at 1:06 pm

    Leave a Reply