- List集合, 時間正序排列、倒序排序
import com.alibaba.fastjson.JSON;
import com.example.demo.Demo.dto.Student;
import com.example.demo.Demo.util.Order;
import java.util.*;
@Order(2)
public class Test {
public static void main(String[] args) {
//MySQL識別的日期格式
String str01 = "2021-06-26T12:11:52.000+0000";
String str02 = "2021-06-25T12:08:41.000+0000";
String str03 = "2021-06-27T12:18:22.000+0000";
Student student01 = new Student(1, "張三", dealDateFormat(str01));
Student student02 = new Student(2, "李四", dealDateFormat(str02));
Student student03 = new Student(3, "王五", dealDateFormat(str03));
List<Student> arrayList = new ArrayList<>();
Collections.addAll(arrayList, student01, student02, student03);
//TODO:正序排列[最小的時間在前]
//輸出: [{"date":"2021-06-25 12:08:41","name":"李四","id":2},{"date":"2021-06-26 12:11:52","name":"張三","id":1},{"date":"2021-06-27 12:18:22","name":"王五","id":3}]
Collections.sort(arrayList, Comparator.comparing(Student::getDate));
System.out.println(JSON.toJSON(arrayList));
//TODO:倒序排序[最大的在前]
//輸出: [{"date":"2021-06-27 12:18:22","name":"王五","id":3},{"date":"2021-06-26 12:11:52","name":"張三","id":1},{"date":"2021-06-25 12:08:41","name":"李四","id":2}]
Collections.sort(arrayList, new CalendarComparator());
System.out.println(JSON.toJSON(arrayList));
}
// 時間倒序排序
private static class CalendarComparator implements Comparator {
public int compare(Object object1, Object object2) {// 實現接口中的方法
Student p1 = (Student) object1; // 強制轉換
Student p2 = (Student) object2;
return p2.getDate().compareTo(p1.getDate());
}
}
// dealDateFormat方法參考另一篇博客: https://www.cnblogs.com/Twittery/p/14943656.html
}