黑马程序员技术交流社区

标题: 统计字符出现的次数 [打印本页]

作者: xiaoya0o0o    时间: 2015-9-22 21:55
标题: 统计字符出现的次数

  1. import java.util.Set;
  2. import java.util.TreeMap;

  3. /*
  4. * "aababcabcdabcde",
  5. *  获取字符串中每一个字母出现的次数要求结果:a(5)b(4)c(3)d(2)e(1)
  6. *  
  7. *  1.字母 + 出现的次数:可以使用双列集合:Map
  8. *  2.因为字母不重复,所以使用字母做键;
  9. *  3.因为需要字母排序,所以使用:TreeMap
  10. */
  11. public class Demo {
  12.         public static void main(String[] args) {
  13.                 TreeMap<Character,Integer> map = new TreeMap<>();
  14.                 String str = "aababcafebcdabcefdefg";
  15.                 for(int i = 0;i < str.length() ; i++){
  16.                         char c = str.charAt(i);
  17.                         //先用c 做键,到集合中查找相应的值
  18.                         Integer value = map.get(c);
  19.                         //取出的value有两种情况:1.null 2.值
  20.                         if(value == null){
  21.                                 map.put(c, 1);
  22.                         }else{
  23.                                 map.put(c, ++value);
  24.                         }
  25.                 }
  26.                 StringBuffer buf = new StringBuffer();
  27.                 Set<Character> keySet = map.keySet();
  28.                 for(Character c : keySet){
  29.                         buf.append(c).append("(").append(map.get(c)).append(")");
  30.                 }
  31.                 System.out.println(buf);
  32.         }
  33. }
复制代码





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2