我的对象有多个日期字段date1
,date2
和date3
。 date1
不为null,因为其他两个日期可以为空。我想用以下规则
date2
为空,请使用date1
,否则请使用date2
date3
进行比较,然后按降序排序。以下是我的豆。
class obj {
private Date date1;
private Date date2;
private Date date3;
obj(Date date1, Date date2, Date date3) {
this.date1 = date1;
this.date2 = date2;
this.date3 = date3;
}
public Date getDate1() {
return date1;
}
public void setDate1(Date date1) {
this.date1 = date1;
}
public Date getDate2() {
return date2;
}
public void setDate2(Date date2) {
this.date2 = date2;
}
public Date getDate3() {
return date3;
}
public void setDate3(Date date3) {
this.date3 = date3;
}
}
我的排序列表看起来像
List<obj> aList = Arrays.asList(
new obj(parseDate("1/1/2018"), null, null),
new obj(parseDate("4/4/2018"), null, parseDate("6/6/2018")),
new obj(parseDate("7/7/2018"), parseDate("8/8/2018"), null)
);
目前,我正在使用流来做这件事。
有没有更好更短的方法呢?