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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 To 于 2015-7-1 23:08 编辑

删除删除删除删除删除删除删除删除删除删除删除删除删除删除删除删除删除删除

QQ截图20130902153207.png (3.6 KB, 下载次数: 26)

QQ截图20130902153207.png

评分

参与人数 1技术分 +1 收起 理由
田磊阳 + 1

查看全部评分

4 个回复

倒序浏览
本帖最后由 jadeite 于 2013-9-2 15:50 编辑

Set存储的是单列集合,把上面代码修改为Set<Character> keySet = tm.entrySet();这样才是遍历集合的key值,迭代器那块也这样改
import java.util.Iterator;
import java.util.Map.Entry;
import java.util.Set;
import java.util.TreeMap;

class MapTest3 {
        public static void main(String[] args) {
                String s = CharCount("asdggdasfjklsdad");
                sop(s);
        }

        public static void sop(Object obj) {
                System.out.println(obj);
        }

        public static String CharCount(String str) {
                char[] chs = str.toCharArray();
                TreeMap<Character, Integer> tm = new TreeMap<Character, Integer>();

                for (int x = 0; x < chs.length; x++) {
                        Integer value = tm.get(chs[x]);
                        if (value == null) {
                                tm.put(chs[x], 1);
                        } else {
                                value = value + 1;
                                tm.put(chs[x], value);
                        }

                }

                /*
                 *
                 * //entrySet()方法。 StringBuilder sb = new StringBuilder();
                 * Set<Map.Entry<Character,Integer>> entrySet = tm.entrySet();
                 * Iterator<Map.Entry<Character,Integer>> it = entrySet.iterator();
                 * while(it.hasNext()) { Map.Entry<Character,Integer> me = it.next();
                 * Character ch = me.getKey(); Integer value = me.getValue();
                 * sb.append(ch+"("+value+")"); }
                 */

                // keySet()方法。
                StringBuilder sb = new StringBuilder();
                Set<Character> keySet = tm.keySet();
                Iterator<Character> it = keySet.iterator();
                while (it.hasNext()) {
                        Character ch = it.next();
                        Integer value = tm.get(ch);
                        sb.append(ch + "(" + value + ")");
                }
                return sb.toString();
        }
}


评分

参与人数 1黑马币 +10 收起 理由
To + 10 单列集合。shit忘了。3q

查看全部评分

回复 使用道具 举报
                Set<Character> keySet = tm.keySet();

                Iterator<Character> it = keySet.iterator();
回复 使用道具 举报
{:3_59:}看了一下,记得更清楚了。。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马