一、List的逆序排序Collections.sort(list)
List 逆序使用lambda表达式,Collections.sort(list);
,且使用System.out.println(list)
可以直接打印出来,不过是带有[]
List<Integer> list = new ArrayList<>();
list.add(2);
list.add(3);
Collections.sort(list); // 默认从小到大
System.out.println(list);
Collections.sort(list, (a, b)->b-a); // 从大到小
System.out.println(list);
二、int[]数组的逆序排序Arrays.sort
Arrays.sort(int[])只有正序排序,但是没法逆序排序,加Comparator也不行,因为它要求元素是对象而不是基础数据类型。
加Comparator,其他类型的数组或者 int[][] 的数组是可以成功的,例如二维int数组
但是我们如果对一维数组逆序排序,就需要将int转为Integer再用Comparator去逆序,最后转回int数组。
Integer[] arr = new Integer[]{2, 3};
Arrays.sort(arr);
Arrays.sort(arr, (a, b)->b-a);
for (int num : arr) { // 自动拆箱为int
System.out.print(num + " ");
}