Java8中list.sort的lamba表达式


  最近写代码,需要对list集合排序,IDEA总是黄色警告:

Reports calls to Collections.sort(list, comparator) which could be replaced with list.sort(comparator).

  楼主多少有点强迫症,那就改吧,修改如下:

            /*Collections.sort(resultList, new Comparator<SystemLog>() {
                    @Override
                    public int compare(SystemLog o1, SystemLog o2) {
                        return o2.getDt().compareTo(o1.getDt());
                    }
                });*/

                resultList.sort(new Comparator<SystemLog>(){
                    @Override
                    public int compare(SystemLog o1, SystemLog o2) {
                        return o2.getDt().compareTo(o1.getDt());
                    }
                });        

  

  好嘛,有报了要换Lamba表达式:Reports all anonymous classes which can be replaced with lambda expressions,Lambda syntax is not supported under Java 1.7 or earlier JVMs.

 

   那就继续改吧,

            /*Collections.sort(resultList, new Comparator<SystemLog>() {
                    @Override
                    public int compare(SystemLog o1, SystemLog o2) {
                        return o2.getDt().compareTo(o1.getDt());
                    }
                });*/
                /*resultList.sort(new Comparator<SystemLog>(){
                    @Override
                    public int compare(SystemLog o1, SystemLog o2) {
                        return o2.getDt().compareTo(o1.getDt());
                    }
                });*/

                resultList.sort(((o1, o2) -> o2.getDt().compareTo(o1.getDt())));

  OK,没有提示了,代码也确实简洁很多。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM