自定义排序,降序排:
Collections.sort(list, new Comparator<Record>() {
@Override
public int compare(Record o1, Record o2) {
return o2.getInt("id").compareTo(o1.getInt("id"));
}
});
自定义排序 升序排
Collections.sort(list, new Comparator<Record>() {
@Override
public int compare(Record o1, Record o2) {
return o1.getInt("id").compareTo(o2.getInt("id"));
}
});
Collections工具类,升序排:
List<Integer> list = new ArrayList<>();
list.add(3);
list.add(5);
list.add(1);
Collections.sort(list);
Collections.reverse(list);
System.out.println(list);
java8新特性,升序排: lamda 表达式 对象排序,Map集合排序方法
List<Map<String, Object>> listMap = new ArrayList<>();
// map对象进行 排序对比,最主要还是要把数字转化为 Integer类型去比较,否则只是字符串比较,无意义,封装成一个可比较的数据类型,转化字符串为数字类型 就可能排序了。灵活多变
model.put("data", listMap.stream()
.sorted((a, b) -> Integer.valueOf(b.get("count").toString()).compareTo(Integer.valueOf(a.get("count").toString())))
.collect(Collectors.toList()));
List<Integer> list = new ArrayList<>();
list.sort(Integer::compareTo);
list.stream().sorted((a,b)->b.compareTo(a)).forEach(System.out::println);
list.stream().sorted(Comparator.reverseOrder()).forEach(System.out::println);