Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/symfony/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java:根据日历日期订购对象列表?_Java_List_Sorting_Calendar - Fatal编程技术网

Java:根据日历日期订购对象列表?

Java:根据日历日期订购对象列表?,java,list,sorting,calendar,Java,List,Sorting,Calendar,我有一个Java对象列表,所有对象都包含以下字段: @JsonProperty @Column(name = "date") private Calendar date; 我想根据上面的字段对对象列表进行排序,首先是带有date字段的对象 最好的方法是什么?您可以使用比较器。比较,假设您有列表,那么您可以这样做 objList.sort(Comparator.comparing(Entity::getDate).reversed()); 您可以使用比较器。比较,假设您有列表,则可以这样做 o

我有一个
Java
对象列表,所有对象都包含以下字段:

@JsonProperty
@Column(name = "date")
private Calendar date;
我想根据上面的字段对对象列表进行排序,首先是带有
date
字段的对象


最好的方法是什么?

您可以使用
比较器。比较
,假设您有
列表
,那么您可以这样做

objList.sort(Comparator.comparing(Entity::getDate).reversed());

您可以使用
比较器。比较
,假设您有
列表
,则可以这样做

objList.sort(Comparator.comparing(Entity::getDate).reversed());
按日期升序排序

yourList.sort(Comparator.comparing(YourObject::getDate));
按日期降序排序

yourList.sort(Comparator.comparing(YourObject::getDate).reversed());
按日期升序排序

yourList.sort(Comparator.comparing(YourObject::getDate));
按日期降序排序

yourList.sort(Comparator.comparing(YourObject::getDate).reversed());

谢谢,我的对象是否需要实现可比较的interface@java12399900否您的对象不需要实现可比较,因为您正在按类型为
Calendar
的字段日期排序,并且Calendar已实现可比较。谢谢,我的对象是否需要实现可比较的interface@java12399900否您的对象不需要实现comparable,因为您正在按类型为
Calendar
的字段日期排序,并且Calendar已经实现comparable。我建议您不要使用
Calendar
。那门课设计得很糟糕,而且早已过时。根据您的具体要求,使用
LocalDate
ZonedDateTime
或其他类别。我建议您不要使用
Calendar
。那门课设计得很糟糕,而且早已过时。根据您的具体要求,使用
LocalDate
ZonedDateTime
或其他类别。