Java y la palabra más larga de una frase

26/Ago/2007 Java , , , 12 Comentarios

El otro día, uno de nuestros visitantes nos preguntaba como podía hacer un código que le localizase la palabra más larga de una frase con Java. Y porqué no ayudarle, si era un código muy sencillo y que seguro podrá ayudar a más gente.

Lo más recomendable es empezar leyéndose dos artículos: Contar palabras en Java y Contador de ocurrencias en Java. Estos nos explican como se pude saber cuantas palabras componen una cadena y cuales son. Uno de ellos mediante el uso del StrinkTokenizer y el otro mediante .indexOf().

Ahora vemos como saber cual es la palabra más larga de una frase. La idea es sencilla, iremos recorriendo todas las palabras de la frase y mientras las recorremos veremos cual de ellas es la de mayor tamaño.

Inicialmente definimos que la palabra mayor es vacía y con tamaño 0.

  1. String palabraMasGrande = "";
  2. int palabraMasGrandeSize = 0;

Por otro lado, partimos la cadena con el texto en las palabras que la conforman. Esto lo hacemos mediante la clase StrinkTokenizer.

  1. StringTokenizer stTexto = new StringTokenizer(sTexto);

Ahora recorremos el StrinkTokenizer para analizar las palabras.

  1. int palabras = stTexto.countTokens();
  2.  
  3. for (int x=0;x><palabras;x++){
  4. sCadena = stTexto.nextToken();
  5. System.out.println(sCadena);
  6. }

Dentro del bucle tenemos que analizar la palabra. Si el tamaño de la palabra, que obtenemos mediante el método .length(), es mayor que el tamaño de la palabra más grande, entonces nos guardamos la palabra actual y su método.

  1. int palabras = stTexto.countTokens();
  2.  
  3. for (int x=0;x<palabras;x++){
  4. sCadena = stTexto.nextToken();
  5. if (sCadena.length() > palabraMasGrandeSize){
  6. palabraMasGrande = sCadena;
  7. palabraMasGrandeSize = sCadena.length();
  8. }
  9. }

Vídeos sobre Java


12 comentarios en “Java y la palabra más larga de una frase”

Víctor Cuervo

ruben

muy bueno solo que no funciona si insertas con mayuscula un nombre. para arreglarlo solo hay que convertir todo el String despues de definir sus parametros a minusculas con variable.tolowercase();

Víctor Cuervo

pirater un compte facebook gratuitement

Encourageant,large Français sur prison Contrairement à qui pirater un compte facebook gratuit sans logiciel.
débordement up Cycles pirater un compte facebook avec wireshark.

Víctor Cuervo

Daniel

Hola muy buena tu pagina! pero tengo una duda que seria utilizar mejor un countoken() o .length() para contar las palabras en un string?. o en que casos usar cada uno ? o que ventajas o diferencias tiene estos metodos
Estoy haciendo un analizador lexico en java y no estoy muy seguro de que usar

Víctor Cuervo

Andres Ruiz

hola, necesito por favor una ayuda, tengo q hacer un ejercicio en donde se cuentes las letras de una palabras y no se como hacerlo….
les agradesco su ayuda.

Víctor Cuervo

Kati

String cad=”Hola Mundo”;
int cant = cad.length(); // El valor de cant será 10

Víctor Cuervo

Carlos

Hola, quisiera saber como retornar la palabra mas grande en un metodo, me pide que sea int y no se como plantearlo exactamente:
public int palabraLarga(String texto) {
StringTokenizer palabras = new StringTokenizer(texto);
String sCadena;
String palabraMasGrande = “”;
int palabraMasGrandeSize = 0;

int palabrasMuch = palabras.countTokens();

for (int x = 0; x palabraMasGrandeSize) {
palabraMasGrande = sCadena;
System.out.println(sCadena);
}
}
return Integer.parseInt(palabraMasGrande);
}

Asi me bota erro, gracias de antemano.

Víctor Cuervo

marco

necesito un programa en java q´utilize el procedimiento polaca utilizando notacion posfija y n. infija

Víctor Cuervo

MARCELO

oye mecetiso que me ayuden hacer un programa de notacion polaca please con el uso de Stack porfa ayudame .
Me dejaron un Ejercicio, pero el maestro nunca nos explico NADA sobre esto, dice:

Sea la exprecion:

3 + ( 4 * a) – ( 2 * b )

Utilizando una pila:
A) Definir estructura que debe de usarse
B) Definir pila
C) Determinar secuencia de operacion push / pop para
evaluar la expresion con notacion polaca infija,
posfija y prefija

Me podrias ayudar a resolver esto?
ó explicar como podria resolverlo. Porfavor Estoy Desesperado

eljuezdelavida@hotmail.com si alguien me puede ayudar

Víctor Cuervo

Oscar

Como le puedo hacer para Realizar una función, a la cual se le pasen dos cadenas de caracteres (s1 y s2) como parámetro y regrese el numero de veces que aparece la cadena s1 en la cadena s2.

Víctor Cuervo

felix

hola de nuevo.

me dejaron un ejercicio sobre string que tiene 9 caracteres, de los cuales 8 son numeros y el ultimo una letra. me piden que que esos que esa string es correcto o no. si lo es mostrara por consola su parte ademas su parte numerica y si no solo su parte nuemerica. quisiera saber que metodos de la string puedo utilizar. se lo agradeceria mucho.

Víctor Cuervo

felix

hola.saludes.

quisiera saber como hago para llamar un metodo que se encuentra en una clase, y quiero mandar a llamar ese metodo pero en otra clase, pero ese metodo despues de mandarlo a llamar me aparesca dentro de un arreglo. es sobre arreglos objetos y metodos. si pudiera darme a lgun ejemplo se agradeceria mucho.

Víctor Cuervo

Marckos

OE LA VERDAD BUENAZO TU BLOG! ME INTERESA MUCHO TU PLANTILLA ME LA PODRIAS MANDAR SI ME AGREGAS SERIA VACAN FAZNET@HOTMAIL.COM

¿Algo que nos quieras comentar?

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

*

*