当前位置: 首页 > article >正文

Java排序方法

在Java中,有多种排序方法可用,其中包括快速排序、归并排序、插入排序等等。Java标准库提供了对数组和集合进行排序的方法。下面是一些常用的Java排序方法的示例:

1. 使用Arrays类中的sort方法对数组进行排序(快速排序):

import java.util.Arrays;

public class Main {
    public static void main(String[] args) {
        int[] arr = {3, 1, 5, 2, 4};
        Arrays.sort(arr);
        System.out.println(Arrays.toString(arr));
    }
}


 

2. 使用Collections类中的sort方法对ArrayList进行排序(归并排序):

import java.util.ArrayList;
import java.util.Collections;

public class Main {
    public static void main(String[] args) {
        ArrayList<Integer> list = new ArrayList<>();
        list.add(3);
        list.add(1);
        list.add(5);
        list.add(2);
        list.add(4);
        
        Collections.sort(list);
        System.out.println(list);
    }
}


 

3. 自定义Comparator来进行排序:

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;

public class Main {
    public static void main(String[] args) {
        ArrayList<Integer> list = new ArrayList<>();
        list.add(3);
        list.add(1);
        list.add(5);
        list.add(2);
        list.add(4);
        
        Collections.sort(list, new Comparator<Integer>() {
            @Override
            public int compare(Integer o1, Integer o2) {
                return o1 - o2; // 升序排序
            }
        });
        System.out.println(list);
    }
}


 

这些示例展示了Java中使用标准库进行排序的几种常用方法。具体选择哪种方法取决于输入数据的类型以及排序的要求。


http://www.kler.cn/a/232251.html

相关文章:

  • 24.11.13 机器学习 特征降维(主成份分析) KNN算法 交叉验证(K-Fold) 超参数搜索
  • 计算机毕业设计Python+大模型中医养生问答系统 知识图谱 医疗大数据 中医可视化 机器学习 深度学习 人工智能 大数据毕业设计
  • MySQL技巧之跨服务器数据查询:基础篇-更新语句如何写
  • 深入探索 React Hooks:原理、用法与性能优化全解
  • 大模型研究报告 | 2024年中国金融大模型产业发展洞察报告|附34页PDF文件下载
  • 用枚举算法解决LeetCode第3348题最小可整除数位乘积II
  • 桌面显示器应用Type-C接口有什么好处
  • 人工智能专题:量子汇编语言和量子中间表示发展白皮书
  • python烟花绘制,春节祝福
  • React 组件跨层级数据共享:createContext、useContext、useMemo
  • Compose | UI组件(十四) | Navigation-Data - 页面导航传递数据
  • OpenHarmony轻量级驱动开发
  • Linux笔记之expect和bash脚本监听输出并在匹配到指定字符串时发送中断信号
  • string容器
  • ubuntu原始套接字多线程负载均衡
  • 【芯片设计- RTL 数字逻辑设计入门 15 -- 函数实现数据大小端转换】
  • 分布式系统架构介绍
  • Kafka系列之:Kafka集群同时设置基于时间和日志大小两种方式保存Topic的数据
  • [当人工智能遇上安全] 11.威胁情报实体识别 (2)基于BiGRU-CRF的中文实体识别万字详解
  • ubuntu22.04@laptop OpenCV Get Started: 002_reading_writing_videos
  • 【龙年大礼】| 2023中国开源年度报告!
  • 大模型2024规模化场景涌现,加速云计算走出第二增长曲线
  • 从Unity到Three.js(安装启动)
  • STM32输出PWM波控制180°舵机
  • VSCode 文件夹增加右键打开
  • 图数据库neo4j入门