对对象集合进行排序的有效方法

时间:2010-03-24 13:23:19

标签: java database collections

我需要对一组对象进行排序,它们以表格格式显示在网页上。我的排序集合创建为

TreeSet<MyObject> objs= new TreeSet<MyObject>();

目前MyObject正在实施Comparable接口以提供排序。在compareTo方法对象中,根据创建日期检查对象作为我的排序逻辑。

现在我需要根据类的各种其他实例变量对此集合进行排序。在探索实现这一目标的选项之后,我对此执行有两个想法,

  1. 使用Comparator。在这个类中,我可以实现我的逻辑来对集合进行排序。
  2. 创建数据库查询以返回MyObject的已排序集合。我可以使用ORDER BY优化来实现这一目标。
  3. 所以,我想知道您对这两种方法的看法,以及对于这种要求应该是最佳解决方案。

1 个答案:

答案 0 :(得分:9)

如果你已经有了内存中的对象,那么用Comparator对它们进行排序肯定会更快。

如果您每次都从数据库中查询它们,那么使用ORDER BY肯定更容易,也可能更快。