首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2EE开发 >

List集合排序有没有一种最简略的方法

2014-05-24 
List集合排序有没有一种最简单的方法我有一个List list集合这个集合里面的map中有个

List集合排序有没有一种最简单的方法
我有一个List<Map<String,Object>> list集合
这个集合里面的map中有个时间列
我想通过这个时间列将这个list集合排序

我能想到的方法有:
一 通过循环排序
二 将list集合里面的map集合转成对象,再在对象里面实现Complarable 接口进行排序,

脑子笨想不到很好的方法,请教各路大神有木有更简单,效率更高的方法。
[解决办法]
public class MapBean implements Comparator<MapBean> {
private Map<String,Object> map=new HashMap<String ,Object>();
public int compare(MapBean o1, MapBean o2) {

return o1.getMap().get("date")-o2.getMap().get("date");
}
public Map<String, Object> getMap() {
return map;
}
public void setMap(Map<String, Object> map) {
this.map = map;
}

}
你可以根据特定属性排序。
List<MapBean > list

Collections.sort(list, new MapBean());排序
[解决办法]


Collections.sort(list,new Comparator<Map<String, Object>>() {
            @Override
            public int compare(Map<String, Object> o1, Map<String, Object> o2) {
                return ((Long)o1.get("time")).compareTo((Long)o2.get("time"));
            }
        });

热点排行