使用当前日期对日期(日期数组列表)进行排序

Posted

技术标签:

【中文标题】使用当前日期对日期(日期数组列表)进行排序【英文标题】:Sort the Dates(array List of dates) by using Current Date 【发布时间】:2019-06-18 05:01:38 【问题描述】:

我有日期数组列表-

24/04/2019,

13/05/2019,

12/04/2019,

11/04/2019

如果说今天的日期是11/04/2019,那么我想显示这样的输出或结果-

11/04/2019,

12/04/2019,

24/04/2019,

13/05/2019

另外,我正在使用收藏。排序,但我如何使用当前日期来使用这个数组列表。

【问题讨论】:

向我们展示您的代码,您尝试了什么,我们可以帮助您解决您的问题,但目前您基本上要求为您编写代码。 你可以使用Collections.sort() 请查看:***.com/questions/5927109/… 如果您仍然觉得困难,请告诉我们。 你想如何使用当前日期?您显示的示例仅显示时间顺序,当前日期似乎没有以任何特殊方式处理?你的问题很不清楚。 【参考方案1】:

该方法是对日期进行升序排序。

您可以使用Comparator 并可以使用compare() 对数据进行排序

Collections.sort(dateList, new Comparator<Date>()
           public int compare(Date date1, Date date2)
          return date1.after(date2);
        
      );

dateList 是日期列表ArrayList&lt;Date&gt;

如果您的日期是字符串格式,则将它们转换为日期格式。

SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy");
try 
  Date d = sdf.parse("11/04/2019");
 catch (ParseException ex) 
  Log.v("Exception", ex.getLocalizedMessage());

【讨论】:

请不要教年轻人使用早已过时且臭名昭著的麻烦SimpleDateFormat类。至少不是第一选择。而且不是没有任何保留。今天我们在java.time, the modern Java date and time API 和它的DateTimeFormatter 中做得更好。是的,您可以在 android 上使用它。对于较旧的 Android,请参阅 How to use ThreeTenABP in Android Project。

以上是关于使用当前日期对日期(日期数组列表)进行排序的主要内容,如果未能解决你的问题,请参考以下文章

按即将到来的日期对日期为字符串的数组进行排序

排序/过滤 NSFetchRequest 如何编写将使用当前日期的排序描述符?

如何对存储在结构内的结构数组中的日期进行排序?

如何使用单元格旁边的下拉菜单对当前日期进行单元格更新?

使用日期对查询集进行排序

日期之间的差异np数组 - 当前日期