What function can be used to sort a Vector?

java, sorting, vector

Solution

As per the API docs, `Vector` just implements `List`, so I don't forsee problems. Maybe your confusion was caused because you declared `Vector` according the old Java 1.0 style:

Vector vector = new Vector();

instead of the declaring it aginst the interface (which is considered good practice):

List list = new Vector();

You can thus just make use of `Collections#sort()` to sort a collection, `Comparable` to define the default ordering behaviour and/or `Comparator` to define an external controllable ordering behaviour.

Here's a Sun tutorial about ordering objects.

Here's another SO answer with complete code examples.

That said, why are you still sticking to the legacy `Vector` class? If you can, just replace by the improved `ArrayList` which was been designed as replacement of `Vector` more than a decade ago.

Problem

I cant find any sorting function in the java API for vectors. `Collections.sort` is only for `List<T>` and not for `Vector<T>`. I don't want to write my own sorting function because I think java should implement this. I'm looking for something like: ``` class ClassName implements Comparator<ClassName> .. ClassName cn = ..; sort(cn); ```

Original source

Related problems