A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

希望打印结果:a(1)c(2)...

  1. package com.mytest;

  2. import java.util.Iterator;
  3. import java.util.Map;
  4. import java.util.Set;
  5. import java.util.TreeMap;

  6. public class test02 {
  7. public static void main(String[] args) {

  8.   String str = "asdfaadsfsaa";

  9.   System.out.println(charCount(str));

  10. }

  11. public static String charCount(String str) {

  12.   char[] chs = str.toCharArray();
  13.   Map map = new TreeMap();

  14.   for (int x = 0; x < chs.length; x++) {

  15.    char ch = chs[x];

  16.    Integer value = map.get(ch);
  17.    if (value == null) {
  18.     map.put(ch, 1);
  19.    } else {
  20.     value = value + 1;
  21.     map.put(ch, value);
  22.    }
  23.   }

  24.   // System.out.println(map);

  25.   Set> entrySet = map.entrySet();

  26.   Iterator> it = entrySet.iterator();
  27.   StringBuffer sb = new StringBuffer();

  28.   while (it.hasNext()) {
  29.    Map.Entry me = it.next();
  30.    Character key = me.getKey();
  31.    Integer value = me.getValue();
  32.    sb.append(key + "(" + value + ")");
  33.   }

  34.   return sb.toString();

  35. }

  36. }
复制代码

1 个回复

正序浏览
恩 基本思路就是这样 用map来处理
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马