java 自定义排序【Comparator升序降序的记法】


需求
今天在写排序时,忘了是返回1,是正序,还是-1为正序。
或者说,正序或者降序我应该如何返回。

例子说明

Collections.sort(companyList, new Comparator<String>() {
                @Override
                public int compare(String o1, String o2) {
                    if(o1.compareTo(o2) < 0 ){
                        return -1;
                    }else if(o1.compareTo(o2) == 0){
                        return 0;
                    }else{
                        return 1;
                    }
                }
            });

 

说明:

我的记法:

顺序其实主要是看-1,-1决定其是否要调整顺序:

if(o1.compareTo(o2) < 0 ){
    return ?;
}
//这里o1表示位于前面的字符,o2表示后面的字符
//上面的条件是,o1比o2小,这个时候,我们需要需要调整它们的顺序
//如果你想升序,那么o1比o2小就是我想要的;所以返回-1,类比成false;表示我不想调整顺序

//如果你想降序,那么o1比o2小不是我想要的;所以返回1,类比成true;表示我想调整顺序


这里o1表示位于前面的字符,o2表示后面的字符
上面的条件是,o1比o2小,这个时候,我们需不需要调整它们的顺序:

如果你想升序,那么o1比o2小就是我想要的;所以返回-1,类比成false;表示我不想调整顺序
如果你想降序,那么o1比o2小不是我想要的;所以返回1,类比成true;表示我想调整顺序



免责声明!

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



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