List集合, 时间正序排列、倒序排序


  1. 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
}


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM