Java Data Type How to - Get occurrences of a char in a string








Question

We would like to know how to get occurrences of a char in a string.

Answer

import java.util.HashMap;
import java.util.Map;
/* w  w  w  .j  a va2  s  .c  o  m*/
public class Main {
  private Map<Character, Integer> charCountMap;
  public Main(String s) {
    initializeCharCountMap(s);
  }
  private void initializeCharCountMap(String s) {
    charCountMap = new HashMap<>();
    for (int i = 0; i < s.length(); i++) {
      char ch = s.charAt(i);
      if (!charCountMap.containsKey(ch)) {
        charCountMap.put(ch, 1);
      } else {
        charCountMap.put(ch, charCountMap.get(ch) + 1);
      }
    }
  }
  public int getCountOf(char ch) {
    if (charCountMap.containsKey(ch))
      return charCountMap.get(ch);
    return 0;
  }
  public static void main(String[] args) {
    Main ob = new Main("Hello from java2s.com");
    System.out.println(ob.getCountOf('o'));
  }
}