Java - Ordenar agrreglo de "String" segun el numero de letras

 
Vista:

Ordenar agrreglo de "String" segun el numero de letras

Publicado por Fabricio (1 intervención) el 09/10/2015 08:01:07
Hola! Necesito ordenar un arreglo de palabras, que este ordenado según el numero de letras que tengan las palabras. Como hago ? En Netbeans XD

Ejemplo: un arreglo de 3 palabras (Hola, Perro, sol) y que estén ordenados de menor a mayor numero de letras (sol, hola, perro) sol = 3 letras, hola = 4 letras, perro =5 letras.

Gracias!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Royeth
Val: 25
Ha aumentado su posición en 3 puestos en Java (en relación al último mes)
Gráfica de Java

Ordenar agrreglo de "String" segun el numero de letras

Publicado por Royeth (16 intervenciones) el 09/10/2015 18:18:41
1
2
3
4
5
6
7
8
9
10
11
12
13
14
String arreglo[]={"hola","perro","sol"};
            for (int i=0; i < arreglo.length-1; i++ ) {
for (int j=i+1; j<arreglo.length; j++) {
if (arreglo[i].length() > arreglo[j].length()) {
String temp = arreglo[i];
arreglo[i] = arreglo[j];
arreglo[j] = temp;
}
}
}
 for (int i=0; i < arreglo.length; i++ ) {
     System.out.println(arreglo[i]);
     System.out.println();
 }


Saludos
https://www.facebook.com/royethmatlab/
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 349
Bronce
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

Ordenar agrreglo de "String" segun el numero de letras

Publicado por Andrés (340 intervenciones) el 18/10/2015 05:21:30
Puedes dejarle todo al API :)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
String[] strs = {"hola","perro","sol"};
 
    	Arrays.sort(strs, new Comparator<String>( ){
 
			public int compare(String arg0, String arg1)  {
 
				int larg0 = arg0.length();
				int larg1 = arg1.length();
 
				return larg0 < larg1 ? -1 : larg0 > larg1 ? 1 : 0;
 
			}});
 
    	for(String s : strs)  {
 
    		System.out.println(s);
 
    	}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar