Arrays中sort降序排列
时间: 2023-05-22 12:01:50 浏览: 99
可以使用Arrays.sort方法,再使用Collections.reverse方法将数组反转即可实现降序排列。示例代码如下:
int[] arr = {3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5};
Arrays.sort(arr);
List<Integer> list = Arrays.asList(arr);
Collections.reverse(list);
arr = list.toArray(new Integer[arr.length]);
System.out.println(Arrays.toString(arr)); // [9, 6, 5, 5, 5, 4, 3, 3, 2, 1, 1]
相关问题
arrays.sort降序
arrays是Java中的一个数组类,其中的sort方法可以对数组进行排序。默认情况下,使用sort方法的时候,是按照升序排列数组中的元素。如果想要对数组进行降序排列,我们需要对sort方法进行一些调整。
按照降序排列数组中的元素,我们可以利用Java中的Comparator接口来实现,该接口可以定义自定义的元素比较器,并且可以通过sort方法中的参数告诉sort方法按照这个比较器中定义的规则来排序数组。
下面是一个Java代码示例,演示如何使用Comparator接口将数组按照降序排列:
```java
import java.util.Arrays;
import java.util.Comparator;
public class ArraySortDescending {
public static void main(String[] args) {
Integer[] numbers = {5, 3, 1, 4, 2};
// 使用Comparator接口定义一个比较器,按照降序排列
Comparator<Integer> cmp = new Comparator<Integer>() {
public int compare(Integer o1, Integer o2) {
return o2 - o1;
}
};
// 使用Arrays.sort方法按照比较器排序
Arrays.sort(numbers, cmp);
// 输出排序后的结果
System.out.println(Arrays.toString(numbers)); // [5, 4, 3, 2, 1]
}
}
```
在该示例中,我们定义了一个包含5个整数元素的数组,然后使用Comparator接口定义了一个比较器,这个比较器按照两个元素的值的降序返回结果。最后,我们调用Arrays.sort方法,并且在排序时传入了这个比较器对象作为参数,最终得到了按照降序排列的数组。
java arrays.sort降序lambda
Java中使用lambda表达式对数组进行降序排序可以使用以下代码:
```
Arrays.sort(array, (a, b) -> b - a);
```
其中,`array`为需要排序的数组,`(a, b) -> b - a`表示使用lambda表达式进行降序排序。具体来说,`a`和`b`分别表示数组中的两个元素,`b - a`表示将它们按照降序排列。
阅读全文