對數組進行反向排序
許多程式語言都提供了方便的函數來按升序對數組進行排序。然而,問題出現了:是否有類似的方法對數組進行降序排序?
Java 的 Arrays 類別
在 Java 中,Arrays 類別提供了 sort()陣列排序的方法。但是,此方法缺乏對降序的直接支援。一種選擇是使用比較器來定義元素的相反順序。
使用比較器
Arrays.sort() 讓您指定一個比較器來決定排序順序。 Collections 類別提供了reverseOrder() 方法來建立一個反轉自然順序的Comparator。
Arrays.sort(a, Collections.reverseOrder());
此方法適用於物件陣列(例如整數陣列)進行排序。但是,對於原始數組,例如 int 數組,它會失敗。
原始數組的替代方法
要按降序對原始數組進行排序,必須先按升序對它們進行排序使用Arrays.sort() 進行排序,然後手動反轉數組元素。
Arrays.sort(a); for (int i = 0, j = a.length - 1; i < j; i++, j--) { int temp = a[i]; a[i] = a[j]; a[j] = temp; }
透過採用這些技術,可以按降序對數組進行排序,無論它包含物件還是基元。
以上是Java中如何對數組進行逆序排序?的詳細內容。更多資訊請關注PHP中文網其他相關文章!