Java Comparator reversed()方法及示例
Java中比较器接口的 reversed() 方法返回一个比较器,对该比较器进行反向排序。如果你使用数组的排序方法,并在应用反转方法后传给这个比较器,那么它将以相反的顺序对数组进行排序。
语法
default Comparator<T> reversed()
参数: 该方法不接受任何东西。
返回值: 该方法返回一个比较器,对该比较器进行反向排序。
下面的程序说明了reversed()方法。
程序1 :
// Java program to demonstrate
// Comparator.reversed() method
import java.util.*;
public class GFG {
public static void main(String[] args)
{
String[] Arraystrings = { "aman", "amar", "avik" };
System.out.println("before sort : "
+ Arrays.toString(Arraystrings));
Comparator<String> comp = (String::compareTo);
Arrays.sort(Arraystrings, comp.reversed());
System.out.println("after sort : "
+ Arrays.toString(Arraystrings));
}
}
输出
before sort : [aman, amar, avik]
after sort : [avik, amar, aman]
程序2
// Java program to demonstrate
// Comparator.reversed() method
import java.util.*;
public class GFG {
public static void main(String[] args)
{
String[] list = { "KKR", "CSK", "MI", "KXIP",
"RCB", "SRH", "DC", "RR" };
System.out.println("Before sorting:");
System.out.println(Arrays.toString(list));
Comparator<String> comp = (String::compareTo);
Arrays.sort(list, comp.reversed());
System.out.println("After sorting:");
System.out.println(Arrays.toString(list));
}
}
输出
Before sorting:
[KKR, CSK, MI, KXIP, RCB, SRH, DC, RR]
After sorting:
[SRH, RR, RCB, MI, KXIP, KKR, DC, CSK]
参考文献: https://docs.oracle.com/javase/10/docs/api/java/util/Comparator.html#reversed()