Collections排序(正序与倒序)日期排序

场景:按日期排序

@Test
    public void test() {
        String s1 = "2018-08-10 22:18:22";
        String s2 = "2018-08-10 22:10:22";
        String s3 = "2018-08-10 22:08:22";
        List arr = new ArrayList<>();
        arr.add(s1);
        arr.add(s2);
        arr.add(s3);
        List dateList = new ArrayList<>();
        DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        for (String s : arr) {
            try {
                Date date = df.parse(s);
                dateList.add(date);
            } catch (Exception e) {
                e.printStackTrace();
            }

        }
        System.out.println(JSON.toJSON(dateList));
        //倒序(这里指原来的内容完全倒置 如 10 8 9 -> 9 8 10)
        Collections.reverse(dateList);
        System.out.println(JSON.toJSON(dateList));
        //正序(从小-大 时间戳排序)
        Collections.sort(dateList);
        System.out.println(JSON.toJSON(dateList));

        //按时间倒序(大->小)
        Collections.sort(dateList);
        Collections.reverse(dateList);
        System.out.println(JSON.toJSON(dateList));
    }

注意:Collections.reverse()方法是将数据倒置,并非倒序。倒序排序时要先正序排序后进行倒置,获取倒序集合

你可能感兴趣的:(java)