JAVA8中Set排序四种写法
下文笔者讲述java8中set排序的方法分享
Java8之Set排序的实现思路
方式1: 定义一个比较器 方式2: 编写一个Lambda比较器 方式3: 使用Comparator.reverseOrder()方法例:Set排序比较的示例
public class TestClass { public static void main( String[] args ) { Set<String> set = new HashSet<>(); set.add("20230808"); set.add("20230802"); set.add("20230803"); set.add("20230804"); set.add("20230805"); Set<String> sortSet = new TreeSet<String>(new Comparator<String>() { @Override public int compare(String o1, String o2) { return o2.compareTo(o1);//降序排列 } }); sortSet.addAll(set); System.out.println(set.toString()); } }例2
public class TestClass { public static void main( String[] args ) { Set<String> set = new HashSet<>(); set.add("20230808"); set.add("20230802"); set.add("20230803"); set.add("20230804"); set.add("20230805"); Set<String> sortSet = new TreeSet<String>((o1, o2) -> o2.compareTo(o1)); sortSet.addAll(set); System.out.println(set.toString()); } }例3
public class TestClass { public static void main( String[] args ) { Set<String> set = new HashSet<>(); set.add("20230808"); set.add("20230802"); set.add("20230803"); set.add("20230804"); set.add("20230805"); Set<String> sortSet = new TreeSet<String>(Comparator.reverseOrder()); sortSet.addAll(set); System.out.println(set.toString()); } }例4:java8流的方式:
public class TestClass { public static void main( String[] args ) { Set<String> set = new HashSet<>(); set.add("20230808"); set.add("20230802"); set.add("20230803"); set.add("20230804"); set.add("20230805"); set.stream().sorted(Comparator.reverseOrder()); System.out.println(set.toString()); } }
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。