时间排序
处理杂乱的各种汇总数据并将其按照时间顺序返回给前端,需要先对所有日期进行汇总并排序后追加各项时间下的数据,以下记录针对个时间点的排序代码(正序,倒序则将return中的o1和o2交换位置)
入参:xs
格式:String类型的时间
出参:res
格式:String类型的时间
public List<String> getSortDate(List<String> xs) {
List<String> res = new ArrayList<>();
Collections.sort(xs, new Comparator<String>() {
DateFormat f = new SimpleDateFormat("yyyy-MM");
@Override
public int compare(String o1, String o2) {
try {
return f.parse(o1).compareTo(f.parse(o2));
} catch (ParseException e) {
throw new IllegalArgumentException(e);
}
}
});
StringBuffer now = new StringBuffer();
ArrayList<String> list1 = new ArrayList<String>();
//用已经排序好的时间对带时间类型的进行对比,获取排序好并且带时间类型
for (int i = 0; i < xs.size(); i++) {
String aa = xs.get(i);
String jj = "";
for (int j = 0; j < list1.size(); j++) {
String fir = list1.get(j).split("#")[0];
if(aa.equals(fir)) {
jj = list1.get(j).split("#")[1];
break;
}
}
res.add(aa);
}
return res;
}
输出:2021-08,2021-11,2022-01,2022-03,2022-08,2022-09,