如何按多个条件排序对象列表

时间:2015-05-26 18:58:31

标签: java algorithm sorting

我需要根据多个条件订购自定义对象列表:

我的目标是这样的:

public class MyJob {
   private Date finish;
   private int  time;
   private int  param1;
   private int  param2;
   private int  param3;
   private int  size;
   //...
}

我需要的是创建一个算法,根据以下内容对作业数组进行排序:

  1. 在完成"完成后,工作无法完成。属性
  2. 鉴于索引i的工作,位置i+1的工作必须具有以下模式之一:
    • 属性param1需要比兄弟作业的param1多一个或少于param2param3相等
    • 属性param2需要比兄弟作业的param2多一个或少于param1且param3相等
    • 属性param3需要比兄弟作业的param3多一个或多,param1param2相等。
  3. 两天后,算法可以从任何类型的param1param2param3开始。
  4. 如果作业的大小超过方法的大小,则必须将其放在列表的末尾。
  5. 可选,算法可以从作为参数传递的param1param2param3开始。
  6. 有人能给我正确的方向来实现这些多重排序算法吗?

    我认为编辑了某种选择排序,但我无法开始。

1 个答案:

答案 0 :(得分:0)

编写您自己的自定义Comparator实施。