Comparator-compare

Comparator 是javase中的接口,位于java.util包下,该接口可以用于比较。

package cn.lf.day0830;

import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;

import org.junit.Test;

public class ComparatorDemo {
    //使用Junit测试程序
    @Test 
    public void test(){
        //创建集合
        List<String> list = new ArrayList<String>();

        //添加元素
        list.add("sghg");
        list.add("sag");
        list.add("geaag");
        list.add("agt");        

        /*Comparator使用率:0.5%
         *
         *compareTo():按照字典顺序排序,如果参数字符串等于此字符串,
         *则返回值 0;如果此字符串按字典顺序小于字符串参数,则返回一
         *个小于 0 的值;如果此字符串按字典顺序大于字符串参数,则返回
         *一个大于 0 的值。
         *
         *int compare(T o1,T o2)比较用来排序的两个参数。根据第一
         *个参数小于、等于或大于第二个参数分别返回负整数、零或正整数      */

        //升序
        /*list.sort(new Comparator<String>() {
            @Override
            public int compare(String str1, String str2) { 
                if (str1.compareTo(str2)>0) {
                    return 1;
                }else if(str1.compareTo(str2)<0){
                    return -1;
                }else {
                    return 0;
                }
            }
        });*/


        //降序
        list.sort(new Comparator<String>() {
            @Override
            public int compare(String str1, String str2) { 
                if (str1.compareTo(str2)<0) {
                    return 1;
                }else if(str1.compareTo(str2)>0){
                    return -1;
                }else {
                    return 0;
                }
            }
        });

        System.out.println(list);
    }
}

升序排序运行结果:[agt, geaag, sag, sghg]

降序排序运行结果:[sghg, sag, geaag, agt]

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值