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值不存在的判斷)