package com.compare.test;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class Main {
public static void main(String[] args) {
Main mainTest=new Main();
mainTest.sortMap();
}
public void sortMap(){
List<Map<Integer, Double>> maps=new ArrayList<Map<Integer, Double>>();
for(int i=0;i<10;i++){
HashMap<Integer, Double> map=new HashMap<Integer, Double>();
for(int j=0;j<2;j++){
map.put(j, Math.random());
}
maps.add(map);
}
for(Map<Integer, Double> map:maps){
System.out.println(getValue(map));
}
System.out.println("************************");
Map<Integer, Double> currentMap;
for(int i=0;i<maps.size()-1;i++){
for(int j=0;j<maps.size()-i-1;j++){
if(getValue(maps.get(j))>getValue(maps.get(j+1))){
currentMap=maps.get(j+1);
maps.set(j+1, maps.get(j));
maps.set(j,currentMap);
}
}
}
for(Map<Integer, Double> map:maps){
System.out.println(getValue(map));
}
}
public Double getValue(Map<Integer, Double> currentMap){
return currentMap.get(0)+currentMap.get(1);
}
}
我采用最简单的排序大数沉底。而且getValue
方法你可以自己实现,决定使用哪几个进行排序。(我们有进行key值不存在的判断)