Pregunta:
¿Ayuda en programacion Java ?
luisfernando_
2008-08-14 00:07:36 UTC
* Un bloque de texto contiene 100 palabras. Se requiere hacer una
lista de palabras únicas, mas aún, también se requiere saber la cantidad de palabras distintas que se disponen. ¿Qué colección de java usaría, y cuál de sus métodos me daría la cantidad de elementos diferentes?
La clase java.util.HashSet y su método size();
La clase java.util.LinkedList y su método size();
La clase java.util.ArrayList y su método size();


**********************************************************************

* Supóngase que MiException debería ser lanzada si la "condición" es verdadera. ¿Qué sentencias deberían ser ingresadas?

1. public unMetodo() throws MiException
2. {
3. if(condicion)
4. {
5.
6. }
7.
8.}
throw new MiException() en la línea 7
throw new MiException() en la línea 5
throw new Exception() en la línea 5
throw new Exception() en la línea 7

Gracias por leer mi pregunta...
Tres respuestas:
P!nkejo
2008-08-14 07:08:35 UTC
Yo utilizaría una LinkedList de Strings. Para poder encontrar el número de palabras diferentes podrías hacer 2 cosas:



1. Si no es necesario que conserves las palabras repetidas, antes de agregar una nueva palabra buscarla en la lista, en caso de que se encuentre entonces no agregarla. Finalmente utilizar el size() para saber cuántas palabras diferentes existen.



2. Si debes tener todas las palabras en la lista, aun las repetidas, entonces hacer un método que te devuelva una lista, recorrer la lista que tiene todas las palabras y hacer lo mismo que el paso anterior (pero esta lista sería una copia que no tendría las palabras repetidas). Finalmente llamas al size() de la lista temporal.



En el caso de la excepción, si MiException se debe lanzar si la condición es verdadera, entonces debes de poner throw new MiException() en la línea 5. Obivamente debes poner un try con un catch a MiException en donde llames unMetodo() o en donde pueda ser posible que se lance MiException.



Espero te sirva.





Saludos
Gus
2008-08-14 23:57:34 UTC
Hola que tal, la colección que debes utilizar es

java.util.HashSet y su método size(). Ya que la HashSet dice que es un conjunto, y en teoría de conjuntos los elementos repetidos no se consideran para dar la cardinalidad de el conjunto...que es lo que regresa el método size() de la HashSet.





HashSet hs = new HashSet ();

hs.add( "Juan");

hs.add( "Juan");

hs.add( "Pedro");



System.out.println( hs.size() );



De está forma tu verás 2, qué son el número de elementos diferentes y no tienes que comprobar nada, ni los elementos repetidos ni nada.



Para la otra pregunta sólo coloca:



throw new MiException() en la línea 5



no tienes que poner bloques try y catch, porque si método que la llama advierte que puede arrojar la excepción.





Saludos
David Emmanuel Donaldo R
2008-08-14 07:24:26 UTC
conosoco donde puedes encontrar la solucion entra a www.forodeinformatica.net, y en menosde 24 horas te solucionaran el problema jejeje, te lo recomiedo ;)


Este contenido se publicó originalmente en Y! Answers, un sitio web de preguntas y respuestas que se cerró en 2021.
Loading...