¿Cómo se puede averiguar el número de veces que se repite una palabra en una cadena usando Java?

importar java.util.HashMap;
import java.util.Map;

Programa de clase pública {

public static void main (String [] args) {

String s = “Un dragón, un dragón, juro que vi un dragón. ¡Un dragón!”;
Map map = getWordCount (s);

para (Map.Entry entrada: map.entrySet ()) {
System.out.println (entry.getKey () + “:” + entry.getValue ());
}
}

Mapa estático getWordCount (String s) {

si (s == nulo)
lanzar una nueva NullPointerException (“La cadena de entrada era nula”);

Map map = new HashMap ();

Cadena [] palabras = s.split (“[\\ p {Punct} \\ s] +”);

para (palabra de cadena: palabras) {
Conteo entero = map.get (palabra);
map.put (word, (count == null? 1: count + 1));
}

mapa de retorno;
}
}

Algunas cosas a tener en cuenta sobre este código:

  1. Considera cada ficha como mayúsculas y minúsculas. Entonces, la palabra Se considera diferente de la palabra it o de cualquier otra variante.
  2. Es posible que desee trabajar con la expresión regular proporcionada como argumento para el método de split en la instancia de String para atender las palabras que incluyen un signo de puntuación como parte de su forma. Por ejemplo, palabras que un apóstrofe en ellos. Por ejemplo, la palabra Es .

Si está esperando el código, lo siento. Esta respuesta no proporciona el código.

Llegando a la pregunta

  1. Divide la cadena en palabras.
  2. Use una colección de mapas y ponga la palabra en el mapa con la palabra (ignorando mayúsculas y minúsculas) como clave y el entero como valor.
  3. Por lo tanto, cada vez que encuentre una palabra que ya esté en el mapa, debe incrementar el valor entero de la entrada del mapa.

Esta es quizás la forma más simple.

Puede usar el método dividido de la clase String y obtener la longitud de la matriz.

String Statement = “Hola, mi nombre es Java, saludame”;

int numberOfHelloWords = instrucción.split (“Hola”). longitud;

En Java, la presencia de varios métodos en la clase de cadena se puede utilizar para encontrar el número de veces que se rearticula una palabra.

Use un indicador que se incremente cada vez que el comparador devuelva un 0. Puede usar el método de subcadena para verificar.