关于JAVA排序的一些

来源:互联网 发布:js 水球图 编辑:程序博客网 时间:2024/06/14 16:33

1,利用Collections 比较器排序

例子

Collections.sort(list,new Comparator<PvpRank>(){@Overridepublic int compare(PvpRank o1, PvpRank o2) {// TODO Auto-generated method stubInteger o1i = o1.getWinRate();Integer o2i = o2.getWinRate();return o2i.compareTo(o1i);}});
其中: 这里取list中的两个对象的WinRate()属性进行排序

再来个MAP的

List<Map.Entry<Integer, Double>> mappingList = new ArrayList<Map.Entry<Integer, Double>>(getHatredMap().entrySet());// 通过比较器实现比较排序Collections.sort(mappingList,new Comparator<Map.Entry<Integer, Double>>() {@Overridepublic int compare(Entry<Integer, Double> o1,Entry<Integer, Double> o2) {// TODO Auto-generated method stubreturn o2.getValue().compareTo(o1.getValue());}});

这里先把map 就是这里的getHatredMap()取到的MAP 转成LIST,能后进行排序

再来一个

Iterator<Integer> it = rollMap.keySet().iterator();Integer Max = it.next();while (it.hasNext()) {Integer nextInteger = it.next();if (rollMap.get(nextInteger).getRate()>rollMap.get(Max).getRate()) {Max = nextInteger;}}

这里是取最值 MAX

在贴个基础的数组排序算法,各种java包装的数组LIST ,MAP SET ,基础还是数组

http://wenku.baidu.com/view/db4405d349649b6648d747c1.html