当前位置:   article > 正文

Map.Entry的用法实战_map.entry

map.entry
  1. //需求:将一串字符串比如 eeadbcd 输出为a(1)b(1)c(1)d(2)e(2)的形式,即字母+出现的次数
  2. import java.util.*;
  3. /**
  4. * Created by patkritLee on 2017/3/16.
  5. */
  6. public class MapTest {
  7. public static void main(String[] args){
  8. String s = charCount("adawdawdawcdwadawd");
  9. System.out.println(s);
  10. }
  11. public static String charCount(String str){
  12. char[] chs = str.toCharArray();
  13. TreeMap<Character,Integer> tm = new TreeMap<Character,Integer>();
  14. int cnt = 0;
  15. for(int x = 0;x < chs.length;x++){
  16. Integer value = tm.get(chs[x]);
  17. if(value!=null)
  18. cnt = value;
  19. cnt++;
  20. tm.put(chs[x],cnt);
  21. cnt = 0;
  22. }
  23. StringBuilder sb = new StringBuilder();
  24. Set<Map.Entry<Character,Integer>> entrySet = tm.entrySet();
  25. Iterator<Map.Entry<Character,Integer>> it = entrySet.iterator();
  26. while(it.hasNext()) {
  27. Map.Entry<Character,Integer> me = it.next();
  28. Character ch = me.getKey();
  29. Integer value = me.getValue();
  30. sb.append(ch+"("+value+")");
  31. }
  32. return sb.toString();
  33. }
  34. }
输出:a(6)c(1)d(6)w(5)
声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
相关标签
  

闽ICP备14008679号