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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© wang06125439 中级黑马   /  2016-5-1 00:07  /  257 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

package itcast;

import java.util.Collection;
import java.util.Comparator;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Scanner;
import java.util.TreeSet;

public class Forth {

        /**
         * 键盘录入一个字符串,计算出每个字符出现的次数
         * 按照次数大小进行排序
         */
        public static void main(String[] args) {
                demo1();
                 //demo2();

        }

        /**
         *
         */
        private static void demo2() {
                Scanner sc = new Scanner(System.in);
                   System.out.println("请输入一个字符串");
                        String s = sc.nextLine();
                        HashMap<Character, Integer> hm = new HashMap<>();
                        char[] array = s.toCharArray();
                        for (Character c : array) {
                                if (!hm.containsKey(c)) {
                                        hm.put(c, 1);
                                }else {
                                        hm.put(c, hm.get(c) + 1);
                                }
                        }
                        Collection<Integer> values = hm.values();
                        TreeSet<Integer> ts = new TreeSet<>(new Comparator<Integer>() {

                                @Override
                                public int compare(Integer i1, Integer i2) {
                                        int num = i2 - i1;
                                        return num == 0 ? 1 : num;
                                }
                        });
                        ts.addAll(values);
                        for (Integer integer : ts) {
                                for (Character c : hm.keySet()) {
                                        if (hm.get(c) == integer) {
                                                System.out.print(c + "(" + hm.get(c) + ")");
                                        }
                                }
                        }
        }

1 个回复

倒序浏览
一生只为黑马币一生只为黑马币
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马