对于int类型的数组,应用Arrays.sort对他进行降序排列,应如何表示?
时间: 2024-03-22 15:37:30 浏览: 5
可以使用Arrays.sort方法以及Comparator接口来实现对int类型的数组进行降序排列。示例代码如下:
```
int[] arr = {5, 2, 8, 1, 9};
Arrays.sort(arr, new Comparator<Integer>() {
@Override
public int compare(Integer o1, Integer o2) {
return o2 - o1;
}
});
System.out.println(Arrays.toString(arr)); // 输出 [9, 8, 5, 2, 1]
```
以上代码中,Comparator接口的compare方法返回的是o2 - o1,表示o2大于o1时返回正数,o2等于o1时返回0,o2小于o1时返回负数,因此可以实现降序排列。
相关问题
sort()降序排列一个int型数组
要降序排列一个int型数组,可以使用Arrays类中的sort()方法,并传入一个Comparator对象来指定降序排序规则。以下是示例代码:
```java
import java.util.Arrays;
import java.util.Comparator;
public class Main {
public static void main(String[] args) {
int[] arr = {3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5};
Arrays.sort(arr, Comparator.reverseOrder());
System.out.println(Arrays.toString(arr));
}
}
```
输出结果:
```
[9, 6, 5, 5, 5, 4, 3, 3, 2, 1, 1]
```
在上面的代码中,我们使用Comparator.reverseOrder()方法创建了一个降序排序规则,将其作为参数传递给Arrays.sort()方法。排序后,使用Arrays.toString()方法打印出排序后的数组。
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方法,并且在排序时传入了这个比较器对象作为参数,最终得到了按照降序排列的数组。