JAVA數組的倒序排序


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());

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2024 CODEPRJ.COM