尘殷 2024-05-26 16:29 采纳率: 0%
浏览 3

java数组排序Arrays.sort

Arrays.sort(数组名);
这个只能对数组重组为升序排序吗,我想把他按降序排序要怎么做

  • 写回答

4条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2024-05-26 16:29
    关注

    引自免费微信小程序:皆我百晓生

    在Java中,Arrays.sort() 方法默认是按照升序对数组进行排序。如果你想让数组按照降序排列,你可以在调用 Arrays.sort() 方法时提供一个自定义的比较器(Comparator)。

    下面是一个例子,展示如何对整数数组进行降序排序:

    import java.util.Arrays;
    import java.util.Comparator;
    
    public class Main {
        public static void main(String[] args) {
            int[] array = {5, 2, 9, 1, 5, 6};
            
            // 使用自定义比较器进行降序排序
            Arrays.sort(array, new Comparator<Integer>() {
                @Override
                public int compare(Integer o1, Integer o2) {
                    return o2 - o1; // 返回值大于0,o1排在o2后面,实现降序排序
                }
            });
    
            System.out.println(Arrays.toString(array)); // 输出:[9, 6, 5, 5, 2, 1]
        }
    }
    

    在这个例子中,我们创建了一个匿名内部类实现了 Comparator<Integer> 接口,并重写了 compare() 方法。当 compare(o1, o2) 的返回值大于0时,元素 o1 将被放在元素 o2 的后面,这样就实现了降序排序。

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 5月26日

悬赏问题

  • ¥15 求解决为什么json数据完整,却解析失败
  • ¥15 打开Smart schedule运行examples/transformer-xl/scripts/run_enwik8_base_moe.sh 报错
  • ¥15 求一个C# sm4 加密解密的代码
  • ¥15 想做个网络加速器,怎么实现
  • ¥20 centos7下载mysql提示DNS解析异常
  • ¥20 vx转账功能对方不能领取
  • ¥15 vue2+codemirror 运行后页面光标太大了
  • ¥15 pdfjs库如何在前端实现打印、旋转等功能
  • ¥15 combobox数据绑定问题
  • ¥15 maven打包时,为什么有的依赖打不进去包