Java中强大的jdk给我们提供了许多现成能使用的排序算法

目录

对数组排序

Arrays.sort();

对List排序排序

1.使用list自带的sort方法

2.使用Collections.sort();方法


对数组排序

Arrays.sort();

对数组进行排序,可以使用Arrays类下提供的sort方法

默认是对基本类型进行从小到大的排序,如果我们要自定义排序方法或者对自己的对象进行排序

(注意语法,传入数组名和一个比较器)

如下代码对Person对象按照年龄从小到大排序

Arrays.sort(personArray, new Comparator<Person>() {@Override//按年龄从小到大排序public int compare(Person o1, Person o2) {return o1.age - o2.age;}
});

对List排序排序

1.使用list自带的sort方法

默认是对基本类型进行从小到大的排序,如果我们要自定义排序方法或者对自己的对象进行排序

(注意语法,传入一个比较器)

List<Person> list = new ArrayList<>();
//......
list.sort(new Comparator<Person>() {@Overridepublic int compare(Person o1, Person o2) {return o1.age-o2.age;}
});

2.使用Collections.sort()方法

只要数组元素可以进行比较就行,不需要传入比较器

只要比较的对象实现comparable接口,也就是可以比较,直接调用Collections.sort()即可比较

class Person implements Comparable<Person>{String name;int age;int height;@Overridepublic int compareTo(Person o) {return this.age-o.age;}
}
List<Person> list = new ArrayList<>();
//......
Collections.sort(list);

Java自带的排序函数归纳总结相关推荐

  1. java中Collections.sort() 排序函数的用法

    java中Collections.sort() 排序函数的用法: 用Collections.sort方法对list排序有两种方法 第一种是list中的对象实现Comparable接口,如下: /** ...

  2. qsort — c语言中自带的排序函数(附带void*、回调函数知识点

    因为总是忘记有qsort这个函数,导致遇到需要排序的题的时候,总是要写着类似的代码,所以特此单独把qsort拿出来单独整理一遍,让自己能够熟练掌握,也以免之后忘记了qsort可以拿自己的文章看. 目录 ...

  3. C/C++自带的排序函数

    1.C标准库函数qsort() qsort函数包含在#include<stdlib.h>中 函数声明: void qsort( void*base, size_t nitems, size ...

  4. c++自带的排序函数sort

    其实C语言里也有qsort排序函数,但相较于C++的sort排序函数更加繁琐,不推荐使用.下面来介绍怎么使用C++里的sort排序函数. Sort的用法 1.sort函数的使用必须加上头文件#incl ...

  5. C语言自带的排序函数

    C语言有自有的qsort函数. 功 能: 使用快速排序例程进行排序 头文件:stdlib.h 原型: void qsort(void base,int nelem,int width,int (fcm ...

  6. sort()排序函数

    http://blog.csdn.net/zzzmmmkkk/article/details/4266888 想起来自己天天排序排序,冒泡啊,二分查找啊,结果在STL中就自带了排序函数sort,qso ...

  7. Java实现对象列表排序

    Java实现多个对象排序(两种方式) 如果是Java自定义的对象,需要对多个对象进行排序,这里使用Java自身提供的排序函数Collections.sort();但是我们的对象需要支持这个函数,需要做 ...

  8. C++ 排序函数 sort(),qsort()的用法

    想起来自己天天排序排序,冒泡啊,二分查找啊,结果在STL中就自带了排序函数sort,qsort,总算把自己解脱了~ 所以自己总结了一下,首先看sort函数见下表: 函数名 功能描述 sort 对给定区 ...

  9. java 内置排序函数_java排序函数

    7. 数组排序 函数:Arrays.sort(); [java] view pl... 在 caller 的实例中,将实现了 A 接口的对象的引用传给 caller,后调用 call()方法; 注意: ...

最新文章

  1. mybatis中<mappers> ,mapperLocations,和MapperScannerConfigurer 用法
  2. springcloud config服务端配置(一)
  3. Partition Array by Odd and Even
  4. C++17 部分实用特性
  5. Linux安装显卡驱动后闪屏问题
  6. RuntimeError: Exporting the operator var to ONNX opset version 11 is not supported. Please open a bu
  7. redigo批量lpush/rpush、批量zrem
  8. JLINK+AXD 调试出现 RDI Warning 00005:Data Abort 问题的解决办法
  9. 脱离低级趣味- Python ‘\r‘, ‘\n‘, ‘\r\n‘ 的彻底理解
  10. 汉字编码问题(附编码察看器)
  11. “海大与我“ Scrum Meeting(第十周会议记录)
  12. 红外解决方案(用于工业、民用、国防和安全应用)的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
  13. Ailurus 小熊猫
  14. 组织技术部的需求评审会
  15. matlab-高数 plot 二维画图 绝对值函数 取整函数 分段函数
  16. 往届生再培训:嵌入式培训4个月,我经历了什么?
  17. 硬件描述语言Verilog学习(二)
  18. 深度优先搜索及python实现围棋“吃子”
  19. 设计模式之外观模式及其应用场景
  20. 【精品必收藏】如何构建企业级微服务异常编码体系

热门文章

  1. JSR教程1——JSR 303 - Bean Validation介绍
  2. 苹果在中国市场的出货量终于下滑了,iPhone热潮开始冷却
  3. C语言实现简单的计算器加减乘除功能
  4. C语言写计算器(最多只可实现浮点型带一层括号的混合运算)
  5. 详解AnyChart创建flash图表
  6. pytest_全局变量的使用
  7. 从原理上搞懂offsetWidth、scrollWidth、clientWidth以及其他偏移量
  8. x11 vnc rdp
  9. thinkpad SL500 2746ca1 安装lion iatkos L2 64bit 成功
  10. Android原生GPS定位以及位置解析