JAVA如何用TreeMap 去统计一个整数数组中 每个数出现的次数 并进行降序排序 求完整的代码

整数数组是50个30-35的随机数... 整数数组 是50个30-35的随机数 展开
 我来答
记仇de小女子
2015-11-19 · 超过75用户采纳过TA的回答
知道小有建树答主
回答量:191
采纳率:100%
帮助的人:103万
展开全部
Map<Integer, Integer> map = new HashMap<Integer, Integer>();
Integer[] ks = new Integer[50];
Random rand = new Random();
for (int i = 0; i < ks.length; i++) {// 赋值50个随机数
ks[i] = rand.nextInt(6) + 30;
}
for (int i = 0; i < ks.length; i++) {// 统计个数
if (map.get(ks[i]) == null) {
map.put(ks[i], 1);
} else {
map.put(ks[i], map.get(ks[i]) + 1);
}
}
List<Integer> list = new ArrayList<Integer>(map.keySet());
Collections.sort(list);// 排序
Collections.reverse(list);// 降序排列
for (Integer num : list) {
System.out.println(num + " 个数: " + map.get(num));
}
匿名用户
2015-11-19
展开全部
import java.util.*;
public class Yugi {
    public static void main(String[] args) {
        Random random = new Random();
        TreeMap < Integer, Integer > map = new TreeMap < Integer, Integer > (new Comparator<Integer>(){  
            public int compare(Integer o1, Integer o2) {  
                return o2.compareTo(o1);  
            }     
        });
        System.out.println("五十个数有:");
        for (int i = 0; i < 50; i++) {
            int n = random.nextInt(6) + 30;
            if (null == map.get(n)) {
                map.put(n, 1);
            } else {
                int x = map.get(n);
                map.put(n, x + 1);
            }
        }
        System.out.println(map);
    }
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式