集合排序
2017-08-08 00:00
113 查看
1. Classic Comparator example
2. 用 Collections.sort
3.Map排序
3.1将Map转成TreeMap,使用默认排序
3.1.1 自定义排序
// Comparator<Type> byName = new Comparator<Type>() { @Override public int compare(Type o1, Type o2) { return o1.getName().compareTo(o2.getName()); } }; // Lambda Comparator<Type> byName =(Type o1, Type o2)->o1.getName().compareTo(o2.getName());
2. 用 Collections.sort
List<Type> collection = new ArrayList<>(); Collections.sort(collection , new Comparator<Type>() { @Override public int compare(Type o1, Type o2) { return o1.getSome() - o2.getSome(); } }); // List.sort() since Java 8 collection .sort(new Comparator<Developer>() { @Override public int compare(Type o1, Type o2) { return o2.getSome() - o1.getSome(); } }); //lambda here! collection.sort((Type o1, Type o2)->o1.getSome()-o2.getSome()); //java 8 only, lambda also, to print the List collection.forEach((o)->System.out.println(o)); //Lambda expression to sort a List using their salary. Comparator<Type> salaryComparator = (o1, o2)->o1.getSalary().compareTo(o2.getSalary()); listDevs.sort(salaryComparator); //倒序 //Lambda expression to sort a List using their salary, reversed order. Comparator<Developer> salaryComparator = (o1, o2)->o1.getSalary().compareTo(o2.getSalary()); listDevs.sort(salaryComparator.reversed());
3.Map排序
3.1将Map转成TreeMap,使用默认排序
Map<String, String> treeMap = new TreeMap<String, String>(unsortMap);
3.1.1 自定义排序
Map<Integer, String> treeMap = new TreeMap<Integer, String>( new Comparator<Integer>() { @Override public int compare(Integer o1, Integer o2) { return o2.compareTo(o1); } }); /* For Java 8, try this lambda Map<Integer, String> treeMap = new TreeMap<>( (Comparator<Integer>) (o1, o2) -> o2.compareTo(o1) ); */ treeMap.putAll(unsortMap);
相关文章推荐
- 集合排序
- 给list中的集合进行倒叙排序
- java如何对List集合中的元素进行排序(请收藏)
- 对各大门户网站的rss源的频道进行分类,集合。使用excel制作,方便按自己需求排序
- 【Android算法】对象集合排序
- Java 集合框架(Collection)和数组的排序
- Java Collections.sort方法对list集合排序
- 【Oracle】day04_子查询_分页查询_DECODE_排序_集合操作_高级分组
- android 集合文字排序
- Go语言:使用sort包对任意类型元素的集合进行排序
- 6.集合遍历和数组排序
- 284_根据集合条目的时间来排序
- JAVA中根据集合中对象属性排序的方法
- 通过 Jedis API 使用 Sorted Set 排序集合
- 利用java反射机制对集合进行排序
- angluar js 集合根据某一属性的值进行重新排序
- Linq对DataTable或者集合的排序,Where筛选,分组,统计总数sum等操作
- 如何对Scala中集合进行排序
- 对象集合排序(需要implements Comparable)
- Java对List集合中的元素进行排序