直接上代码
public static void main(String[] args) {
List<Map<String, Object>> custList = new ArrayList<Map<String, Object>>();
Map<String, Object> custMap1 = new HashMap<String, Object>();
Map<String, Object> custMap2 = new HashMap<String, Object>();
Map<String, Object> custMap3 = new HashMap<String, Object>();
Map<String, Object> custMap4 = new HashMap<String, Object>();
Map<String, Object> custMap5 = new HashMap<String, Object>();
Map<String, Object> custMap6 = new HashMap<String, Object>();
Map<String, Object> custMap7 = new HashMap<String, Object>();
Map<String, Object> custMap8 = new HashMap<String, Object>();
custMap1.put("分数", 1203);
custMap1.put("姓名", "刘明");
custMap2.put("分数", 23);
custMap2.put("姓名", "小方");
custMap3.put("分数", 42);
custMap3.put("姓名", "张三");
custMap4.put("分数", 0);
custMap4.put("姓名", "李四");
custMap5.put("分数", 3423);
custMap5.put("姓名", "王五");
custMap6.put("分数", 9999);
custMap6.put("姓名", "赵六");
custMap7.put("分数", 3232);
custMap7.put("姓名", "李明");
custMap8.put("分数", 134);
custMap8.put("姓名", "胡说");
custList.add(custMap1);
custList.add(custMap2);
custList.add(custMap4);
custList.add(custMap5);
custList.add(custMap6);
custList.add(custMap7);
custList.add(custMap8);
//通过集合提供的方法实现
Collections.sort(custList, new Comparator<Map<String, Object>>() {
@Override
public int compare(Map<String, Object> o1, Map<String, Object> o2) {
// TODO Auto-generated method stub
return Integer.parseInt(o2.get("分数").toString()) - Integer.parseInt(o1.get("分数").toString());//根据第一个参数小于、等于或大于第二个参数分别返回负整数、零或正整数
}
});
for (Map<String, Object> m : custList) {
System.out.println(m);
}
}
{姓名=赵六, 分数=9999}
{姓名=王五, 分数=3423}
{姓名=李明, 分数=3232}
{姓名=刘明, 分数=1203}
{姓名=胡说, 分数=134}
{姓名=小方, 分数=23}
{姓名=李四, 分数=0}