java集合框架类-排序
来源:互联网 发布:局域网mac扫描工具 编辑:程序博客网 时间:2024/06/05 17:15
对于排序程序我们在计算机课程中是经常见到的。各种排序算法也是基础课程之一。相信提到算法和计算机编程对于大多数同学小盆友们并不陌生了。我们在实验课或是课程设计中都会经常实现一个快速排序,冒泡排序,堆排序等各种排序算法。但是在平时的工作中,我们也经常会用到排序。大部分是比较简单的排序,当然我们可以自己写一个简单的排序算法,进行排序。但是如果这样做,可能会耗费很长时间,性能和效率以及代码正确性也可能有待证明。那么对于在工作中进行排序的情况有没有简单的方式呢?有!接下来让我们看一看java集合框架工具类的强大之处吧!
JAVA COLLECTIONS FRAMEWORK
第一部分 排序
Java中对于可排序对象分了两种类型。一种是数组 T[]. 一种是链表 List<T>.
首先对于第一种进行讲解。
考虑如何排序数组中的数据。
例如 4,12,-1,3
如果采用一般方式,我们需要写一个排序算法然后进行排序。
但是如果采用Java集合框架呢?如下:
两行代码即可按照默认排序方式实现!
输出结果如下 -1,3,4,12
这里面的关键点在哪里呢?
Arrays.sort() 函数。
Arrays属于集合框架中的一个类。专门提供了对于数组的排序方法。
对于函数sort() 其声明方式如下:
对于基本类型排序方式很简单。当然Arrays仍然提供了各种工具方法支持各种有意思的操作。
对于自定义对象数组的排序,有一点必须明确。就是个对象之间的比较关系是如何决定的。
这样就引出了另一个sort函数定义:
和
对于第一个定义数组中的对象必须实现了Comparable接口
例如:
这个时候只需要调用如下代码
可完成排序
对于第二种方式
第一个参数是自定义数据类型(当然也可以是基本类型中的包装类了)第二个参数则就是我们在排序中的关键。
Comparator 是一个接口
我们需要实现之,如下
然后通过调用如下代码
即可完成升序排序。
对于第一种方式,如果项将排序编程降序,则不大好实现了(除非修改compareTo代码)。
我们可以采用第二种方式,在实现一个降序的接口如下:
然后:
即可完成降序排序。
对于如何具体复杂的完成了排序(JDK到底做了些什么工作呢?)我们下次继续探秘!
完整代码实例
- java集合框架类-排序
- java笔记-集合框架-集合排序
- Java集合排序及java集合类详解:集合框架中常用类比较
- Java集合框架总结:TreeSet类的排序问题
- Java集合框架和数组的排序
- Java集合框架基础——排序
- Java集合框架之TreeMap的排序
- java集合框架之学生成绩排序
- Java集合类框架
- JAVA集合类框架
- JAVA集合类框架
- Java 集合类框架
- JAVA集合类框架
- Java集合框架类
- JAVA集合类框架
- Java集合类框架
- JAVA 集合类框架
- Java集合类框架
- 使用plsql作为Oracle的客户端
- linux进程控制
- Mpeg-2的同步及时间恢复
- 迷茫
- ASP连接sql server实例解析
- java集合框架类-排序
- Oracle客户端NLS_LANG设置(转载)
- 如何在ado中使用connection 对象?
- POJ 1743 不可重叠最长重复子串
- C盘有三个文件体积实在太大,加起来有十多个G!
- ADO三大对象的属性、方法、事件及常数
- DedeCMS V5.3文章分页标题加上序号方法
- Discuz!NT 数据库读写分离方案(转)
- java排序对象实现