Ordenar un Vector de String en Java

22/mar/2009 Java , , , 18 Comentarios
java

Dentro de la librería java.util encontramos una serie de métodos que nos ayudan a ordenar las colecciones como vectores,listas,... Para ello nos apoyamos en la clase Collections.

Lo primero que tenemos que hacer para ordenar un Vector de String en Java es crear dicho Vector:

  1. Vector<String> miVector = new Vector<String>();

e insertarle datos mediante el método .add:

  1. miVector.add("Victor");
  2. miVector.add("julio");
  3. miVector.add("amaya");

Ahora utilizaremos la clase Collections y su método sort. Será este método sort el que nos permita ordenar un Vector en Java de forma sencilla.

  1. Collections.sort(miVector);

El Vector pasa como parámetro del método sort. Una vez ejecutada esta sentencia nuestro Vector estará ordenado.

Ahora solo nos queda volcar el contenido por pantalla. Para ello vamos a utilizar un bucle for-each:

  1. for(String sElemento: miVector){
  2. System.out.println(sElemento);
  3. }

Hay que tener en cuenta que la ordenación que ejecuta el método sort es en base al valor de los caracteres ASCII. Es por ello que en nuestro contenido:

Victor, julio, amaya

Nos lo devolverá ordenado como:

Victor, amaya, julio

Ya que el valor ASCII de la V mayúscula es 86 y el de la a minúscula es 97. Es por ello que ordenará a las mayúsculas primero.

En próximos artículos veremos como ordenar un Vector de String en Java de forma alfabética.

Vídeos sobre Java Util

Difunde el Conocimiento

Si te ha gustado el artículo o te ha sido de utilidad, no dejes de compartirlo con tus amigos en las redes sociales... Te estaremos muy agradecidos. :-D

18 comentarios en “Ordenar un Vector de String en Java”

Víctor Cuervo

jcarlos

Buenas noches, paso a agradecerte por el articulo, me ayudo mucho ahora mismo
que tenia ese problemita al imprimir un vector de String
saludos.

Víctor Cuervo

Cristina

Hola, muy buen aporte. Gracias.
Por lo que veo ordena según los valores ASCII de los caracteres, osea que primero van las mayúsculas y luego las minúsculas. Tengo un programa casi terminado pero me queda que teniendo un vector de tipo char, me ordene las letras con las mayúsculas antes que las minúsculas de cada letra. Ejemplo: si tengo “asAchCb” el resultado de la ordenación sería “AabCchs”. He probado mil cosas y nada funciona, ya que todos los métodos que conozco ordenan según ASCII. ¿Alguna idea por favor? Muchas gracias de antemano.

Víctor Cuervo

Davicho

Hola…alguien q me ayude por favor…tengo que hacer un programa en java sobre vectores que me de las opciones de ingresar el tamaño del vector……pero tengo q ingresar numeros y luego q me de las opciones de 1. ordenarlos de forma ascendente y 2. ordenarlos de forma descendente…..ayuda xfavor gracias

Víctor Cuervo

LUCIA HOYOS

HOLA POR FAVOR ME PODRIAN AYUDAR CON UN EJERCICIO DE JAVA ES URGENTE ES EL SIGUIENTE: DADA UNA CADENA MUESTRE CUANTAS VOCALES CONTIENE Y GUARDELAS EN UN VECTOR, GUARDE EN OTRO VECTOR LA POSICION DONDE SE ENCUENTRA CADA VOCAL.
ES URGENTE !!!!!!!!!!!!!!!!!!! MIL GRACIAS AL QUE ME PUEDA AYUDAR ES QUE APENAS ESTOY APRENDIENDO JAVA

Víctor Cuervo

jose luis

hola querria saber como convertir un vector int en una matriz

Víctor Cuervo

Norma Alvarez

hola. Tengo que realizar un pequeño programa de biblioteca, solo tiene dos clases Boblioteca y Libro, la idea es usar metodos que me permitan registrarLibro, consultarLibro, devolverLibro, prestarLibro. en Java no se si puedan ayudarme con alguna idea. Gracias

Víctor Cuervo

lineadecodigo

@cvccc,

Mira a ver si te sirve el artículo Calcular Media de Numeros con Java.

Espero que te sea de ayuda.

Víctor Cuervo

cvccc

hola podria aserme el fabor de ayudarme con este programa en java eclipseCalcular el promedio de N alumnos que tiene 7 calificaciones en la materia de programación, utilizar vectores.

Víctor Cuervo

lineadecodigo

@maria,

También te puede ser interesante el artículo Insertar elementos en un vector.

Víctor Cuervo

lineadecodigo

@Fhernd,

Muy buen aporte. Muchas gracias.

Víctor Cuervo

Fhernd

Cómo ingresar datos a un vector:

ingresarNotas()
{
java.util.Scanner teclado = new Scanner( System.in );
double[] notas = new double[30];

for( int nota = 0 ; nota < notas.length ; ++nota )
{
System.out.println( “Digite ” + ( nota + 1 ) + ” : ” );
notas[ nota ] = teclado.nextDouble();
} // fin for

}// fin del método ingresarNotas

Víctor Cuervo

maria

tengo un ejercicio de en un vector para ingresar 30 notas y sacar el promedio y el numero mayor ¿como hago para ingresar datos a un vector?

Víctor Cuervo

Esmeralda

Hola me gustaria que me ayudaran con un programa necesito hacer una ordenacion de caracteres cheque el codigo pero no se como implementarlo en mi codigo mi programa es de una biblioteca y quiero rodenar los libros por autor y esos datos los tengo en un vector llamado estante[ ] quien me pueda ayudar espeor respuesta y les pongo parte de mi programa…. gracias

Víctor Cuervo

Fhernd

Hola! Muy interesante es tema de la ordenación de elementos de un vector. Gracias por la información. Hasta pronto!

¿Algo que nos quieras comentar?

Déjanos tu comentario, no te preocupes que tu email no será publicado

*


*