首页 > 编程知识 正文

java修改list顺序,数组排序java

时间:2023-05-04 15:58:22 阅读:151194 作者:676

开发工具和关键技术: MyEclipse 10,Java语法

作者: yyddd

写作时间: 2019年6月5日

集合和数组之间的差异:

数组:只能存储固定大小的相同类型的元素。 数组元素可以是基本数据类型的值或对象。

集合:可用于存储各种数量的对象,实现一般的数据结构。 也可以保存具有映射关系的关联数组。 集合只能保存对象。

Collection和map属于同一系统集合,list和set接口继承Collection接口。 List接口可以有规则地存储重复数据。

一. List中的Comparable排序:

Comparable是排序接口。 如果类实现了Comparable接口,则意味着该类支持排序。 实现Comparable接口的类的对象列表或数组可以按Collections.sort或Arrays.sort自动排序。

示例:

说明: Comparable相当于“内部比较器”。 首先,创建对象实现它的接口,然后按自己定义的类进行排序。 根据Comparable在接口中排序方法根据compareTo改变排序方法。 按照从小到大的顺序指定排序方法。 this .成员变量-按从大到小的顺序指定o .成员变量。

这里按照年龄从小到大的顺序排序,如果年龄相同的话按照名字排序。 输出结果如下。

二. List中的Comparator排序:

Comparator是比较接口。 可以实现Comparator来创建新的比较器,然后使用该比较器对类进行排序。 示例:

描述: Comparator相当于外部比较器,首先创建对象,添加数据,然后通过Collections工具类中的sort排序方法传递给Comparator进行排序并定制排序。 排序方法为从小到大o1 .成员变量-o2 .成员变量,从大到小o2 .成员变量-o1

这里按照年龄从小到大的顺序排序,如果年龄相同的话按照名字排序。 输出结果如下。

实际上,这两种排序方法的输出效果相同,不同的是Comparable排序需要修改原始类并在该类中实现接口。 Comparator排序在外部写就可以了,不需要移动原类。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。