您的位置:首页 > 产品设计 > UI/UE

根据value字段对map进行排序

2011-11-04 18:06 344 查看
一般来说,我们通常都是通过map中的key字段进行排序,步骤如下:

一、根据key对map进行排序

TreeMap<String , Integer> map = new TreeMap<String,Integer>(new Comparator<String>(){ //直接添加比较器

public int compare(String o1,String o2){

.....

}

});

但是却没有直接的方法能够进行value排序;

二、根据value对map进行排序

步骤如下:

1.提取视图

2.变成ArrayList,并添加比较器

Set<Map.Entry<String,Integer>>set = map.entrySet();

ArrayList<Map.Entry<String,Integer>> list = new ArrayList<Map.Entry<String,Integer>>(set);

Collections.sort(list,new Comparator<Map.Entry<String,Integer>(){

public int compare(Map.Entry<String,Integer> o1,Map.Entry<String,Integer> o2){

int value1 = o1.getValue();

int value2 = o2.getValue();

//接着就可以进行比较了

}

}>);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: