【发布时间】:2020-01-28 22:59:49
【问题描述】:
假设我有一个简单的 Worker 类:
public class Worker {
private String name;
private Date birthDate;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Date getBirthDate() {
return birthDate;
}
public void setBirthDate(Date birthDate) {
this.birthDate = birthDate;
}
}
我有一个包含一些工人的列表,我需要对这个列表应用以下排序:
1) 按出生日期对工人进行排序
2) 如果有重复出生日期的工人,那么我需要按姓名对这些工人进行排序
例如:
亚当 02/11/1995
凯恩 1986 年 11 月 5 日
迈克 17/09/1999
本 17/09/1999
罗伯特 1999 年 9 月 17 日
按出生日期排序后排序:
凯恩 1986 年 11 月 5 日
亚当 02/11/1995
迈克 17/09/1999
本 17/09/1999
罗伯特 1999 年 9 月 17 日
按名称排序日期重复后的顺序:
凯恩 1986 年 11 月 5 日
亚当 02/11/1995
本 17/09/1999
迈克 17/09/1999
罗伯特 1999 年 9 月 17 日
所以,在第二步,我需要在第一步之后保存工人的顺序,并且只为具有重复出生日期的工人更改它
有什么简单的方法可以实现吗?
【问题讨论】:
标签: java sorting java-stream