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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 魏兴发 黑马帝   /  2011-11-14 17:40  /  2436 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

请问,HashMap如何按着Value值的大小来排序啊!!

评分

参与人数 1技术分 +1 黑马币 +2 收起 理由
黑马谢承强 + 1 + 2

查看全部评分

4 个回复

倒序浏览
想排序请勿使用无序集合。
回复 使用道具 举报
用TreeMap,默认是按Key排的
可以写一个比较器,想怎么排就怎么排
回复 使用道具 举报
给你个例子:
public class TestTreeMap {

        /**
         * @param args
         */
        public static void main(String[] args) {
                // TODO Auto-generated method stub

                TreeMap<Amap,String> tm=new TreeMap<Amap,String>();
                tm.put(new Amap(3),"轻量级应用");
                tm.put(new Amap(-5),"Struts2权威指南");
                tm.put(new Amap(9),"java疯狂 讲义");
                System.out.println(tm);
               
        }

}


class Amap implements Comparable<Amap>{

        int count;

        public String toString(){
                return "A(count属性:"+count+
                ")";
                }

        public int compareTo(Amap o) {
                // TODO Auto-generated method stub
                if(this.count>o.count){
                        return 1;
                }else if(this.count<o.count){
                        return -1;
                }
               
                return 0;
        }

        public Amap(int count) {
                super();
                this.count = count;
        }
}


好好看看,

评分

参与人数 1技术分 +1 黑马币 +3 收起 理由
黑马谢承强 + 1 + 3

查看全部评分

回复 使用道具 举报
zhanghua 发表于 2011-11-14 19:58
给你个例子:
public class TestTreeMap {

谢啦!!!!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马