Java Data Type How to - Find repeated words on a string and counting the repetitions








Question

We would like to know how to find repeated words on a string and counting the repetitions.

Answer

/*w  w  w .  j  av  a  2 s . c o m*/
import java.util.Arrays;
import java.util.Collections;
import java.util.HashSet;
import java.util.List;
import java.util.Set;

public class Main {
  public static void main(String[] args) {

    String text = "a r b k c d se f g a d f s s f d s ft gh f ws w f v x s g h d h j j k f sd j e wed a d f";

    List<String> list = Arrays.asList(text.split(" "));

    Set<String> uniqueWords = new HashSet<String>(list);
    for (String word : uniqueWords) {
      System.out.println(word + ": " + Collections.frequency(list, word));
    }
  }

}