在一些集合中,存放数据可能不是按一定顺序来进行存放。在要求按一定规则进行排序输出时,这时就需要对集合进行重排。
重排有相应几种方法:

实现Comparator接口,重写comparable方法

这个方法要求创建一个比较器,实现Comparator接口。
以ArrayLIst集合为例:
创建如下实体类:
Comparable在集合中的使用
创建一个比较器,按实体类的年龄降序排序:
Comparable在集合中的使用
其测试类为
Comparable在集合中的使用
其中,调用Collections中的sort()方法,传入集合,和比较器。其执行结果为:
Comparable在集合中的使用
当然也可以采用匿名Comparator内部类的形式来传入比较器。更加方便。
Comparable在集合中的使用

在实体类中,继承Compare接口并重写compareTo()方法

Comparable在集合中的使用
创建测试类:
Comparable在集合中的使用
其结果为:
Comparable在集合中的使用
如图所示:同样达到相应排序的要求。
注意:在以hashMap相似的数据结构中,是不能够对数据进行排序的。如HashMap集合 HashSet集合等。

相关文章:

  • 2021-07-21
  • 2021-12-25
  • 2022-12-23
  • 2022-12-23
  • 2021-05-29
  • 2021-08-01
猜你喜欢
  • 2021-08-14
  • 2021-10-23
  • 2022-12-23
  • 2022-01-06
  • 2021-08-03
  • 2021-10-13
相关资源
相似解决方案