首頁 >Java >java教程 >如何依降序對 Java 陣列進行排序?

如何依降序對 Java 陣列進行排序?

Linda Hamilton
Linda Hamilton原創
2024-11-02 00:10:31993瀏覽

How to Sort a Java Array in Descending Order?

Java 數組按降序排序

Arrays 類別中存在一個數組排序實用程序,用於按升序對數組進行排序。但是,沒有直接的方法可以按降序對數組進行排序。

使用比較器的解決方案

要依降序對物件陣列進行排序,請使用下列指令code:

<code class="java">sort(T[] a, Comparator<? super T> c)</code>
<code class="java">Arrays.sort(a, Collections.reverseOrder());</code>

原始數組的解

對於int[]這樣的原始數組,上面的方法不能直接使用。相反,請依照下列步驟操作:

  1. 依升序將陣列排序:

    <code class="java">Arrays.sort(a);</code>
  2. 就地反轉已排序的陣列:

    <code class="java">reverseArray(a);
    
    private static void reverseArray(int[] arr) {
      for (int i = 0, j = arr.length - 1; i < j; i++, j--) {
     int temp = arr[i];
     arr[i] = arr[j];
     arr[j] = temp;
      }
    }</code>

範例

<code class="java">public static void main(String[] args) {
  int[] arr = {5, 3, 1, 2, 4};

  // Sort in descending order
  reverseArray(arr);

  // Print the sorted array
  for (int num : arr) {
    System.out.println(num); // 5, 4, 3, 2, 1
  }
}</code>

以上是如何依降序對 Java 陣列進行排序?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn