首页 > 代码库 > java编程排序之自定义类型的集合,按业务需求排序

java编程排序之自定义类型的集合,按业务需求排序

自定义引用类型放入集合中,按实际业务需求进行排序的两种思路

第一种思路:

  (1)自定义实体类实现java.lang.Comparable接口,重写public int compareTo(Object obj)方法。自定义业务比较规则

  (2)利用java.util.Collections类的静态方法sort(List<自定义类型> list)进行排序(默认升序)或者。自己编写排序工具类。冒泡+compareTo(obj)方法

 

第二种思路

  (1)自己编写业务比较规则类。实体类不用实现任何借口。业务比较规则类实现java.util.Comparator接口。重写public int compare(String o1, String o2)方法,编写排序规则

  (2)利用java.util.Collections类的静态方法sort(List<自定义类型> list)进行排序(默认升序)或者。自己编写排序工具类。冒泡+compareTo(obj)方法 

 

一般推荐使用第二种思路。

第二种思路(1)排序规则和实体类解耦。当业务发生变化,可以灵活改变。

     (2)如果项目是接手别的公司,实体类无源代码,则可以编写排序规则业务类。