数组的排序

作者: zhushican 分类: 建站教程 发布时间: 2014年8月14日 次浏览 0条评论

有了内置的排序方法之后,你就能对任何数组排序了,不论是primitive的还是对象数组,只要它实现了comparable接口或有一个与之相关的comparator对象就行了。这个功能填补了Java类库的一个大漏洞。标准类库所用的排序算法已经做了优化——对primitive,它用的是快速排序,对对象,它用的是稳定合并排序。所以除非是prolier表明排序算法是瓶颈,否则你不用为性能担心。

一旦数组排完序,你就能进行快速查询了。但是切记对一个尚未排序的数组使用查询,因为这么做的结果是没有意义的。如果数组里面有重复元素,那它不能保证会返回哪一个。这个算法不支持重复元素,不过它也不报错。所以,如果你需要的是一个无重复元素的有序序列的话,那么可以考虑使用Treeset。

总而言之,如果你要持有一组对象,首选,同时也是效率最高选择应该是数组。而且,如果这是一组primitive的话,你也只能用数组。我们要讲一些更为一般的情况,也就是写程序的时候还不知道要用多少对象,或者要用一种更复杂方式来存储对象情况。为此,Java提供了一容器类,就能解决很多问题了。

本文出自 老域名查询 ,转载时请注明出处及相应链接。

本文永久链接: http://www.sc8323.com/2014/651.html

数组  排序  
回顶部