# 如何在 Java 中按降序对`ArrayList`进行排序

> 原文： [https://beginnersbook.com/2013/12/sort-arraylist-in-descending-order-in-java/](https://beginnersbook.com/2013/12/sort-arraylist-in-descending-order-in-java/)

之前我们分享了[`ArrayList`](https://beginnersbook.com/2013/12/how-to-sort-arraylist-in-java/)升序排序的例子。在这里，我们将学习如何按降序（或递减顺序）对`ArrayList`进行排序。

## 示例：按降序排序

我们使用[`Collections.reverseOrder()`](https://docs.oracle.com/javase/6/docs/api/java/util/Collections.html#reverseOrder())方法和`Collections.sort()`以按降序对列表进行排序。在下面的示例中，我们使用以下语句以相反的顺序进行排序。
`Collections.sort(arraylist, Collections.reverseOrder());`

但是，逆序排序也可以如下进行 - 这样列表将首先按升序排序，然后反转。

```java
Collections.sort(list);
Collections.reverse(list);
```

**完整的例子：**

```java
import java.util.*;
public class Details  {

	public static void main(String args[]){
	   ArrayList<String> arraylist = new ArrayList<String>();
	   arraylist.add("AA");
	   arraylist.add("ZZ");
	   arraylist.add("CC");
	   arraylist.add("FF");

	   /*Unsorted List: ArrayList content before sorting*/
	   System.out.println("Before Sorting:");
	   for(String str: arraylist){
			System.out.println(str);
		}

	   /* Sorting in decreasing order*/
	   Collections.sort(arraylist, Collections.reverseOrder());

	   /* Sorted List in reverse order*/
	   System.out.println("ArrayList in descending order:");
	   for(String str: arraylist){
			System.out.println(str);
		}
	}
}
```

输出：

```java
Before Sorting:
AA
ZZ
CC
FF
ArrayList in descending order:
ZZ
FF
CC
AA
```

在上面的例子中，我们使用 String 类型的`ArrayList`（`ArrayList&lt;String&gt;`）进行排序。同样的排序方法也可以用于整数列表。