所以我想在Java中创建一个排序从数组中的所有值到从最高到最低的方法。例如:如果我给这个数组:
int[] nums = {1254, 4875, 9452, 5412, 6245, 5158, 6215, 8426, 20158};
我如何制作一个从最高到最低打印所有这些数字的方法?
答案 0 :(得分:1)
您应该首先对数组进行排序:
Arrays.sort(nums);
这会按升序对数组进行排序,所以如果你只是循环遍历循环,那应该这样做:
for(int i=nums.length-1; i>=0; i--){
System.out.println(nums[i]);
}
希望有所帮助!
答案 1 :(得分:0)
更新:我误读了“降序”这个词。
这是一个解决方案:
public static void main(String[] args) {
int[] nums = {1254, 4875, 9452, 5412, 6245, 5158, 6215, 8426, 20158};
reverseOrder(nums);
for(int i = 0; i < nums.lenght; i++){
System.out.println(nums[i]);
}
}
private static void reverseOrder(int[] nums) {
Arrays.sort(nums);
int[] reverseSortedNum = new int[nums.length];
for (int i = 0; i < nums.length; i++) {
reverseSortedNum[i] = nums[nums.length - 1 - i];
}
}
答案 2 :(得分:0)
试试这个:
return Arrays.sort(arr);
答案 3 :(得分:0)
对于一组int的特定情况,最好的选择可能是正常排序,然后复制逆转顺序的数组。如果你有一个Object引用数组,比如一个Integer数组,你也可以选择提供一个反转正常比较的Comparator。