首先创建一个实体类

package com.huawei.Test;import java.util.Date;/*** @author h84250472* @title: User$* @description: TODO* @date 2022/6/29 10:54*/
public class User {private String name;private String sex;private Integer age;private Date birthday;public User(String name, String sex, Integer age, Date birthday) {this.name = name;this.sex = sex;this.age = age;this.birthday = birthday;}public User() {}public Date getBirthday() {return birthday;}public void setBirthday(Date birthday) {this.birthday = birthday;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getSex() {return sex;}public void setSex(String sex) {this.sex = sex;}public Integer getAge() {return age;}public void setAge(Integer age) {this.age = age;}@Overridepublic String toString() {return "User{" +"name='" + name + '\'' +", sex='" + sex + '\'' +", age=" + age +", birthday=" + birthday +'}';}
}

之后通过把实体类加入到list集合中,并按照生日时间进行排序,此处用了两种方法进行排序,分别是stream和Collections进行排序,代码如下:

package com.huawei.Test;import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.stream.Collectors;/*** @author h84250472* @title: Test04$* @description: TODO* @date 2022/7/25 14:44*/
public class Test04 {public static void main(String[] args) throws ParseException {List<User> list = new ArrayList<>();long time1 = System.currentTimeMillis()+10000L;long time2 = System.currentTimeMillis()+20000L;long time3 = System.currentTimeMillis()+30000L;long time4 = System.currentTimeMillis()+40000L;//规定日期格式SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//将long类型的时间变成String类型String format1 = sd.format(time1);//将String类型的时间变成Date类型Date parse1 = sd.parse(format1);String format2 = sd.format(time2);Date parse2 = sd.parse(format2);String format3 = sd.format(time3);Date parse3 = sd.parse(format3);String format4 = sd.format(time4);Date parse4 = sd.parse(format4);User u1 = new User("zahngSan","nan",20,parse1);User u2 = new User("lisi","nan",30,parse2);User u3 = new User("wangwu","nan",26,parse3);User u4 = new User("xiaofang","nv",20,parse4);Collections.addAll(list,u1,u2,u3,u4);
//        List<User> collect = list.stream().sorted(new Comparator<User>() {
//            @Override
//            public int compare(User o1, User o2) {
//                Date date1 = o1.getBirthday();
//                Date date2 = o2.getBirthday();
//                return Long.compare(date2.getTime(), date1.getTime());
//            }
//        }).collect(Collectors.toList());//用stream进行排序List<User> collect = list.stream().sorted((User o1, User o2) -> {Date date1 = o1.getBirthday();Date date2 = o2.getBirthday();return Long.compare(date2.getTime(), date1.getTime());}).collect(Collectors.toList());for (User user : collect) {System.out.println(user);}//用集合进行排序Collections.sort(list, new Comparator<User>() {@Overridepublic int compare(User o1, User o2) {Date date1 = o1.getBirthday();Date date2 = o2.getBirthday();if (date1.getTime()>date2.getTime()){return 1;} else if (date1.getTime()<date2.getTime()){return -1;}else{return 0;}}});}
}

对List集合中每个对象元素按时间顺序排序相关推荐

  1. Java8——Stream流操作List排序_List集合中每个对象元素按时间顺序排序

    一个学生类的实体类 @Data public class Student {private Long id;private String name;private int age;private Do ...

  2. 对List集合中的对象进行按某个属性排序

    最近在实际的开发工作中,碰到排序的问题,如题,我们如何针对List集合中的某一个属性进行排序 import java.util.ArrayList; import java.util.Collecti ...

  3. 【Java面试题】54 去掉一个Vector集合中重复的元素

    在Java中去掉一个 Vector 集合中重复的元素 1)通过Vector.contains()方法判断是否包含该元素,如果没有包含就添加到新的集合当中,适用于数据较小的情况下. import jav ...

  4. List集合中的对象根据属性排序

    List集合中的对象根据属性排序 集合类List存放的数据,默认是按照放入时的顺序存放的,比如依次放入A.B.C,则取得时候,则也是A.B.C的顺序,实际场景中,有时我们需要根据自定义的规则对List ...

  5. 【Groovy】集合遍历 ( 调用集合的 every 方法判定集合中的所有元素是否符合闭包规则 | =~ 运算符等价于 contains 函数 | 代码示例 )

    文章目录 一.调用集合的 every 方法判定集合中的所有元素是否符合闭包规则 二.代码示例 一.调用集合的 every 方法判定集合中的所有元素是否符合闭包规则 集合的 every 方法 , 用于 ...

  6. set集合判断集合中是否有无元素_集合 (Set) | 一山不容二虎的 Python 数据类型

    点击上方"可乐python说"关注公众号,点击右上角 "..."选择"设为星标"第一时间获取最新分享! 前言 Hi,大家好,我是可乐, 今天 ...

  7. java——定义一个功能将ArrayList 集合中的重复元素删除(java集合七)

    定义一个功能将ArrayList 集合中的重复元素删除 ArrayList 集合中是允许储存重复元素的 import java.util.ArrayList; import java.util.Ite ...

  8. set集合判断集合中是否有无元素_第八章 集合

    1. Java集合体系结构(List.Set.Collection.Map的区别和联系) Collection 接口存储一组不唯一,无序的对象 List 接口存储一组不唯一,有序(插入顺序)的对象 S ...

  9. set集合判断集合中是否有无元素_Python基础学习笔记(五)集合与字典

    本节知识大纲: 集合 字典 一.Set 集合的概念 1. set 集合的性质 set 集合是一组无序的且不能重复的集合,打印 set 集合时会自动消除重复的元素项: set 集合用大括号表示: set ...

最新文章

  1. 漫画:腾讯面试题(盛最多水的容器)
  2. linux下常用关机命令
  3. python【数据结构与算法】程序设计:划分整数(DP)
  4. ubuntu MySQL Oracle_Oracle 与 MySql 区别
  5. How do I enable core dumps for everybody
  6. oracle怎么删除存储,删除Oracle分区存储是一个怎样的过程?
  7. 一次完整的zabbix监控配置
  8. C语言学习笔记---字符串对比函数strspn()和strcspn()函数
  9. 合数分解1(C语言)
  10. [悟] 因上努力,果上随缘(转)
  11. java指定一个具体日期
  12. 应用软件,操作系统,CPU的关系
  13. c# 软件单元测试,单元测试(C#版)
  14. [技术分享 – FCS 篇] 驭龙五式3之飞龙在天:安装 FCS 服务器
  15. 脾气与冲突--试用ymlf下wine跑windows程序有感
  16. 浅析正向代理、反向代理、透明代理
  17. 嘉为蓝鲸CMP云管平台入选Gartner《中国云管理工具市场指南》
  18. 【转载】关于MSHTML
  19. 【数学建模】CUMCM-2013B 碎纸片的拼接复原 解题思路整理
  20. 学习表——受任于败军之际,奉命于危难之间(12.12-12.18)

热门文章

  1. 解决 Missing GL version
  2. 黑客因网文作者写太烂盗其账号,帮改文更新修防火墙,网友:大佬能看看我的论文吗?...
  3. c2-00支持java_双卡双待 诺基亚C2-00的外观详解
  4. 三星带着Bixby搅局中国市场,还说自己是「一家AI技术公司」
  5. 劳务派遣有五险一金吗?
  6. Python微信操控itchat定时发送消息
  7. 晒一波程序员的桌面,逼格超级高!
  8. 【98期分享】4款汇报总结PPT模板免费下载
  9. 【乐理】常用和弦走向(4536251/1645)
  10. 免冠证件照如何制作?制作证件照的简单方法