List数组使用stream根据时间进行排序实现
乱序 [ Student{userName='张三', userNick='2', age=22, createTime='2022-12-02 2:11:00'}, Student{userName='李四', userNick='1', age=23, createTime='2022-12-03 16:11:00'}, Student{userName='王五', userNick='4', age=24, createTime='2022-12-01 21:11:00'}, Student{userName='赵六', userNick='3', age=25, createTime='2022-12-02 22:11:00'}] 降序 [ Student{userName='王五', userNick='4', age=24, createTime='2022-12-01 21:11:00'}, Student{userName='赵六', userNick='3', age=25, createTime='2022-12-02 22:11:00'}, Student{userName='张三', userNick='2', age=22, createTime='2022-12-02 2:11:00'}, Student{userName='李四', userNick='1', age=23, createTime='2022-12-03 16:11:00'}] 升序[ Student{userName='李四', userNick='1', age=23, createTime='2022-12-03 16:11:00'}, Student{userName='张三', userNick='2', age=22, createTime='2022-12-02 2:11:00'}, Student{userName='赵六', userNick='3', age=25, createTime='2022-12-02 22:11:00'}, Student{userName='王五', userNick='4', age=24, createTime='2022-12-01 21:11:00'}]
public class Test { public static void main(String[] args) throws IOException { //测试数据,请不要纠结数据的严谨性 List<Student> studentList = new ArrayList<>(); studentList.add(new Student("张三","2",22,"2022-12-02 2:11:00")); studentList.add(new Student("李四","1",23,"2022-12-03 16:11:00")); studentList.add(new Student("王五","4",24,"2022-12-01 21:11:00")); studentList.add(new Student("赵六","3",25,"2022-12-02 22:11:00")); //根据日期进行升序排序 //乱序 System.out.println("乱序"+studentList); //根据日期进行降序排序 List<Student> studentsSortAsce = studentList.stream().sorted(Comparator.comparing(Student::getCreateTime)).collect(Collectors.toList()); //根据日期进行升序排序 List<Student> studentsSortDesc = studentList.stream().sorted(Comparator.comparing(Student::getCreateTime).reversed()).collect(Collectors.toList()); //升序后输出 System.out.println("降序"+studentsSortAsce); //降序后输出 System.out.println("升序"+studentsSortDesc); } } class Student{ private String userName; private String userNick; private int age; private String createTime; public Student() { } public Student(String userName, String userNick, int age, String createTime) { this.userName = userName; this.userNick = userNick; this.age = age; this.createTime = createTime; } @Override public String toString() { return "Student{" + "userName='" + userName + '\'' + ", userNick='" + userNick + '\'' + ", age=" + age + ", createTime='" + createTime + '\'' + '}'; } public String getUserName() { return userName; } public void setUserName(String userName) { this.userName = userName; } public String getUserNick() { return userNick; } public void setUserNick(String userNick) { this.userNick = userNick; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String getCreateTime() { return createTime; } public void setCreateTime(String createTime) { this.createTime = createTime; } }
本文来自博客园,作者:迷糊桃,转载请注明原文链接:https://www.cnblogs.com/mihutao/p/16832917.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
2021-10-27 遍历List集合的三种方法
2021-10-27 JSON日期显示问题