【问题标题】:Sort Arraylists according to Dates with particular format根据特定格式的日期对 Arraylist 进行排序
【发布时间】:2011-09-16 13:41:49
【问题描述】:

我有一个问题,我想针对日期数组列表对多个数组列表进行排序,格式为:2011-07-18T10:39:32.144Z。在java中怎么做?谁能帮帮我?

提前致谢。

【问题讨论】:

  • 你的列表中的日期是 Date 对象,还是字符串表示形式?

标签: java android


【解决方案1】:

首先,日期的格式无关紧要,只要用 Date 类表示即可。

由于 Date 实现了 Comparable,Collections 类的标准排序应该可以工作。

将“日期”视为您的 ArrayList,只需执行以下操作: Collections.sort(日期);

【讨论】:

    【解决方案2】:

    使用此代码

    Collections.sort(arrayListOfDates, new Comparator(){
                    @Override
                    public int compare(Object o1, Object o2) {
                        Date date1=(Date)o1;
                        Date date2=(Date)o1;
                        if(date1.equals(date2))
                            return 0;
                        else if(date1.before(date2))
                            return 1;
                        else
                            return -1;
                    }
                });
    

    它对日期的 ArrayList 进行排序并将其存储在同一个列表中

    【讨论】:

    • 没有泛型并忽略Date实现Comparable的事实?
    • 对我的问题有用 +1
    猜你喜欢
    • 2012-02-24
    • 1970-01-01
    • 1970-01-01
    • 2015-03-31
    • 1970-01-01
    • 2014-05-13
    • 1970-01-01
    • 2017-05-12
    • 1970-01-01
    相关资源
    最近更新 更多