如何在我的项目中使用 Comparator 方法
How to use the Comparator method in my project
我正在 Java.I 创建一个问题跟踪器有一个问题 class 如下:
import java.util.Date;
public class Issue {
int IssueNo;
String IssueTitle;
String text;
Date TimeStamp=new Date();
String Creator;
String Assignee;
String tag;
int priority;
String status;
}
我的程序必须根据优先级(从 1 到 9 的数字)或时间戳(创建问题的日期)显示问题。我想知道如何使用优先级队列和比较器来显示问题问题
比较器有一种方法:
int compareTo(T a, T b)
其中 return 负整数表示 a 更大,正整数表示 b 更大,0 表示相等
因此,要进行多因素比较(正如您所做的那样),请从优先级开始。
int priorityCompare = ((Issue)b).priority - ((Issue)a).priority;
如果 priorityCompare 不为 0,return priorityCompare。如果为 0,则移动到下一个比较点(日期),依此类推,直到找到不同的比较点,或者所有点都相等,在这种情况下 return 0;
我正在 Java.I 创建一个问题跟踪器有一个问题 class 如下:
import java.util.Date;
public class Issue {
int IssueNo;
String IssueTitle;
String text;
Date TimeStamp=new Date();
String Creator;
String Assignee;
String tag;
int priority;
String status;
}
我的程序必须根据优先级(从 1 到 9 的数字)或时间戳(创建问题的日期)显示问题。我想知道如何使用优先级队列和比较器来显示问题问题
比较器有一种方法:
int compareTo(T a, T b)
其中 return 负整数表示 a 更大,正整数表示 b 更大,0 表示相等
因此,要进行多因素比较(正如您所做的那样),请从优先级开始。
int priorityCompare = ((Issue)b).priority - ((Issue)a).priority;
如果 priorityCompare 不为 0,return priorityCompare。如果为 0,则移动到下一个比较点(日期),依此类推,直到找到不同的比较点,或者所有点都相等,在这种情况下 return 0;