本次排序我们使用的是comparator,它是javase中的接口,位于java.util包下
话不多说,上代码
package resume;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.*;
public class format {
public static void main(String[] args) {
Map map1 = new HashMap();
map1.put("name", 1);
Map map2 = new HashMap();
map2.put("name", 10);
Map map3 = new HashMap();
map3.put("name", 7);
//构建一个list中包含map的列表
List<Map<String, Object>> list = new ArrayList<Map<String, Object>>() {
{
add(map1);
add(map2);
add(map3);
}
};
//调用Collections中的sort方法进行排序,需要重写compare
Collections.sort(list, new Comparator<Map<String, Object>>() {
@Override
//compare 是比较的意思,按某个字段的大小进行比较排序
public int compare(Map<String, Object> o1, Map<String, Object> o2) {
Integer name1 = (Integer) o1.get("name");
Integer name2 = (Integer) o2.get("name");
//升序
return name1.compareTo(name2);
//降序
//return name2.compareTo(name1);
}
});
System.out.println(list);
}
}