java8 list 通过对象属性排序

393 阅读1分钟

java8 List对象根据时间排序

直接上代码

rewardModelList  是我本地的 一个list ==List<实体> 
 DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

            if (rewardModelList.size() > 1) {
                //list 集合倒叙排序
                rewardModelList.sort((a1, a2) -> {
                    try {
                        return df.parse(sdf.format(a2.getTime())).compareTo(df.parse(sdf.format(a1.getTime())));
                    } catch (ParseException e) {
                        e.printStackTrace();
                    }
                    return 1;
                });
            }

你想正序的话 就 把代码的 return df.parse(sdf.format(a2.getTime())).compareTo(df.parse(sdf.format(a1.getTime()))); 改成 return df.parse(sdf.format(a1.getTime())).compareTo(df.parse(sdf.format(a2.getTime())));

最后: 本人愚钝,小白一枚,就想到这样的方式,各路大神不要嘲笑,如果有更好的方式欢迎探讨!