Arrays工具類中沒有提供直接的倒序排序方法,只有默認的sort,但是提供了重載方法
public static <T> void sort(T[] a, Comparator<? super T> c) { if (c == null) { sort(a); } else { if (LegacyMergeSort.userRequested) legacyMergeSort(a, c); else TimSort.sort(a, 0, a.length, c, null, 0, 0); } }
第二個參數提供一個比較器就可以按照自己定義的規則進行排序(內部比較器和外部比較器)
同時呢,Comparator接口提供了一個靜態方法reverseOrder,提供自然順序的逆序比較器,舉個簡單的例子,一般不會用這個方法對基本類型進行排序,因為第一個參數需要提供一個對象。
Integer[] nums = {1,2,3,5,4};
Arrays.sort(nums,Comparator.reverseOrder());