使用当前日期对日期(日期数组列表)进行排序
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<Date>
。
如果您的日期是字符串格式,则将它们转换为日期格式。
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。以上是关于使用当前日期对日期(日期数组列表)进行排序的主要内容,如果未能解决你的问题,请参考以下文章