0 votos
por (20 puntos) en Java
buenas noches , usuarios del foro.

Porfavor ayuda

Deseo saber como hago que me imprima en el panel  la palabra que más se repite, y a su vez que menos se repite

Esta es la captura de pantalla en donde deberia sali el resultado

despues de dar clip en el boton

http://s3.subirimagenes.com:81/otros/previo/thump_6446135javaa.jpg

y este es el codigo que tengo con el cual me sale el numero de palabaras de letras y la palabra mas corta y laraga

lo que me hace falata es la palabara que mas se repite como la que menos se repite

ayuda porfavor

<pre lang='java'>
   this.jTextField1.setText(AVISUALApp.titulo2);
        String texto=AVISUALApp.texto;
        int npalabras=0;
        int nletras=0;
        nletras=texto.length();
        StringTokenizer st = new StringTokenizer(texto);
        npalabras=st.countTokens();
        String palabra,maslarga,mayor;
        maslarga="";
        mayor="";
        while (st.hasMoreTokens())
     {
           palabra=st.nextToken();
                   if (palabra.length()>maslarga.length()) {
                            maslarga= palabra;
                         }
                   if (palabra.compareTo(mayor)>0) {
                       mayor= palabra;
                }
    }
        Map<String,Integer> palabrasYOcurrencias = new HashMap();
        while(st.hasMoreTokens()){
            palabra = st.nextToken();
            int ocurrencias = 1;
            if (palabrasYOcurrencias.containsKey(palabra)){
                ocurrencias = palabrasYOcurrencias.get(palabra) +1;
            }
            palabrasYOcurrencias.put(palabra,ocurrencias);
        }
        int val1=palabrasYOcurrencias.size();
        //String masrepetida=palabrasYOcurrencias.

        this.jTextField2.setText(String.valueOf(npalabras));
        this.jTextField3.setText(String.valueOf(nletras));
        this.jTextField4.setText(maslarga);
        this.jTextField5.setText(mayor);
    }                                    

    /**
    * @param args the command line arguments
    */
    public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new ESTADISTICAS().setVisible(true);
            }
        });
    }

1 Respuesta

0 votos
por (4.3k puntos)
@NAEDH,

El código para encontrar la palabra más larga de una frase lo tienes en

http://lineadecodigo.com/java/java-y-la-palabra-mas-larga-de-una-frase/

Y para un contador de ocurrencias de una frase en

http://lineadecodigo.com/java/contador-de-ocurrencias-en-java/

Espero que puedan orientarte.


Preguntas relacionadas

0 votos
0 respuestas
preguntado por daniela (20 puntos) Ene 15, 2023 en Java
0 votos
0 respuestas
preguntado por zantiok (20 puntos) May 29, 2019 en Java
0 votos
0 respuestas
Bienvenido a Dudas de Programación, donde puedes hacer preguntas y recibir respuestas sobre los problemas más frecuentes de los lenguajes de programación, frameworks de desarrollo y bases de datos que utilices. Foro de Línea de Código

Categorías

...