在Java中,对数字进行降幂排序通常意味着按照数字的大小进行排序,最大的数字排在最前面。以下是一些实现降幂排序的方法:
1. 使用`Collections.sort()`方法和自定义的降序比较器进行排序:
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
public class Main {
public static void main(String[] args) {
ArrayList
numbers = new ArrayList<>(); numbers.add(10);
numbers.add(5);
numbers.add(8);
numbers.add(3);
numbers.add(12);
Collections.sort(numbers, new Comparator
() { @Override
public int compare(Integer o1, Integer o2) {
return o2 - o1;
}
});
for (Integer number : numbers) {
System.out.println(number);
}
}
}
2. 使用`Arrays.sort()`方法和`Comparator`接口进行排序:
import java.util.Arrays;
import java.util.Comparator;
public class Main {
public static void main(String[] args) {
Integer[] arr = {9, 8, 7, 2, 3, 4, 1, 0, 6, 5};
Arrays.sort(arr, Collections.reverseOrder());
for (Integer x : arr) {
System.out.println(x);
}
}
}
3. 使用`Arrays.sort()`方法进行升序排序,然后反转数组:
import java.util.Arrays;
public class Main {
public static void main(String[] args) {
int[] arr = {28, 12, 89, 73, 65, 18, 96, 50, 8, 36};
Arrays.sort(arr);
// 反转数组实现降序
for (int i = 0; i < arr.length / 2; i++) {
int temp = arr[i];
arr[i] = arr[arr.length - 1 - i];
arr[arr.length - 1 - i] = temp;
}
System.out.println(Arrays.toString(arr));
}
}