java API中,没有对数组降序排序的方法?
java API中,没有对数组降序排序的方法?如果题目要求降序排序,我们只能自己写方法?
[解决办法]
先升序 再倒着输出来
[解决办法]
import java.util.Arrays;import java.util.Comparator;public class Test4 { public static void main(String[] args) { Integer[] nums = {1,2,3,4,5,6}; Arrays.sort(nums, new MyComparator()); for (int i = 0; i < nums.length; i++) { System.out.println(nums[i]); } } }class MyComparator implements Comparator<Integer> { public int compare(Integer o1, Integer o2) { return o2 - o1; }}
[解决办法]
import java.util.Arrays;import java.util.Scanner;public class MySort { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub int num[]=new int[5]; Scanner input=new Scanner(System.in); int i=0; System.out.println("请输入五个整数"); //获取五个整数输入 while(i<5){ System.out.print("请输入第"+(i+1)+"个数:"); try{ num[i]=input.nextInt(); i++; System.out.println(); }catch(NumberFormatException e){ System.out.println("你输入的不是整数,请重新输入!"); } } //排序前输出 System.out.println("排序前的数组元素如下"); for(int elem:num){ System.out.print(elem+" "); } System.out.println(); System.out.println("排序后的数组元素如下"); //对五个整数排序,先升序,再降序 Arrays.sort(num); int num1[]=new int[5]; for(int j=0;j<5;j++) num1[j]=num[4-j]; num=num1; for(int elem:num){ System.out.print(elem+" "); } }}