Programación General > Java

 Organizar Letras De Una Palabra

<< < (2/4) > >>

cuper90:

--- Cita de: "hano" --- Creo que un TreeSet te simplificará mucho la vida. El TreeSet mantiene una colección de elemento únicos y ordenados.

Saludos

Luis Javier López Arredondo
--- Fin de la cita ---
Es cierto, el treeset ayuda mucho, ahora lo que hice fue crear un treeset como me dijiste y agregarle uno por uno los caracteres del string, despues solo imprimo el treeset      :)


--- Código: Text ---import java.util.*; public class Palabras2{   public static void main(String Args[]){    String palabra = &#34;supercalifragilistico&#34;;    TreeSet letrasOrdenadas = new TreeSet();        for(int i=0; i&#60;palabra.length(); i++){      letrasOrdenadas.add(palabra.charAt(i));    }    System.out.println(letrasOrdenadas);  }   } 
y la salida es esta: [a, c, e, f, g, i, l, o, p, r, s, t, u]

pero para mis propositos necesito pasar el contenido del treeset a un array.... y no se como  :(

otra opcion seria saber como "llamar" o hacer referencia a cada elemento del treeset y con un for imprimirlo...pero tampoco se como.... :o

lei la pagina pero no encontre como hacerlo

PD para lencho: no supe como armar el "if NoExiste"

silverfox:
Hola...


--- Citar ---pero para mis propositos necesito pasar el contenido del treeset a un array.... y no se como
--- Fin de la cita ---

Si echáseis un vistazo de vez en cuando al API de java, en la parte de TreeSet, veríais que tiene un método que se llama toArray y que, además de convertir en array, si los elementos tienen un orden determinado, te los devuelve exactamente en el mismo orden...


Un saludo.



Silverfox

cuper90:
No me funca  :(


--- Código: Text ---     String[] y = letrasOrdenadas.toArray(new String[0]);        System.out.println(y);  
me da error

igual que asi


--- Código: Text ---     char[] y = letrasOrdenadas.toArray(new char[0]);  

silverfox:
Hola...

Piensa un poco en lo que has escrito:


--- Citar ---
--- Código: Text ---new String[0] 
--- Fin de la cita ---


Estás reservando espacio para un arry de 0 posiciones...
Lo mismo te pasa con el de new char[0].

Prueba con


--- Código: Text ---String[] y = letrasOrdenadas.toArray(new String[letrasOrdenadas.size()]); 
A ver si tira mejor.



Un saludo.



Silverfox

cuper90:
Gracias, pero no funciona, siempre me salen estos errores:

como sugerias:


--- Código: Text ---&#62;javac Palabras2.javaPalabras2.java:14: incompatible typesfound   : java.lang.Object[]required: java.lang.String[]    String[] y = letrasOrdenadas.toArray(new String[letrasOrdenadas.size()]);                                                    ^Note: Palabras2.java uses unchecked or unsafe operations.Note: Recompile with -Xlint:unchecked for details.1 error&#62;Exit code: 1 

aunque le ponga un tamaño especifico


--- Código: Text ---&#62;javac Palabras2.javaPalabras2.java:14: incompatible typesfound   : java.lang.Object[]required: java.lang.String[]    String[] y = letrasOrdenadas.toArray(new String[20]);                                                    ^Note: Palabras2.java uses unchecked or unsafe operations.Note: Recompile with -Xlint:unchecked for details.1 error&#62;Exit code: 1 
aunque ponga un arreglo de char's


--- Código: Text ---&#62;javac Palabras2.javaPalabras2.java:14: cannot find symbolsymbol  : method toArray(char[])location: class java.util.TreeSet    char[] y = letrasOrdenadas.toArray(new char[20]);                                          ^Note: Palabras2.java uses unchecked or unsafe operations.Note: Recompile with -Xlint:unchecked for details.1 error&#62;Exit code: 1 
no le entiendo la verdad ya lo intenté de todas formas posibles  :brickwall:

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

[*] Página Anterior

Ir a la versión completa