网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

Java中的Compare和Comparator的使用方法

如何使用Java中的Compare和Comparator?相信很多新手小白对Compare和Comparator的了解处于懵懂状态,通过这篇文章的总结,希望你能有所收获。如下资料是关于Compare和Comparator使用方法的代码。

让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:域名注册、网页空间、营销软件、网站建设、长泰网站维护、网站推广。

class Apple implements Comparable{
    int id;
    double price;
public Apple(int id, double price) {
    this.id = id;
    this.price = price;
}
public int compareTo(Apple o) {
    //return Double.compare(this.getPrice(),o.getPrice());
    if (Math.abs(this.price-o.price)<0.001)
        return 0;
    else
        return (o.price-this.price)>0?1:-1;
}
@Override
public String toString() {
    return "Apple{" +
            "id=" + id +
            ", price=" + price +
            '}';
}

}```

class AESComparator implements Comparator{


    public int compare(Apple o1, Apple o2) {
        if (Math.abs(o1.price-o2.price)<0.001)
            return 0;
        else{
            return (o1.price-o2.price)>0?1:-1;
        }
    }
}

 实现了Comparable接口的类需要实现compareTo()方法,传入一个外部参数进行比对,实现了Comparator接口的方法需要实现compare()方法,对外部传入的两个类进行比较,从而让外部方法在比较时调用。

 两者的区别是实现Comparator接口代码更加灵活,可以定义某个类的多个比较器,从而在排序时根据实际场景自由调用,而Comparable接口实现后便不能改动。

 总结:
comparator接口:真正要实现的只有compare()方法,需要单独准备出一个类来实现comparator接口,这个类将作为指定类的排序类

public int compare(Emp o1,Emp,o2){
     return o1.id - o2.id
}
这是说如果o1的id - o2的id是正数就升序,如果负数降序。如果0就剔除

  >0  升序
<0降序
=0 重复,不记录
comparable接口

实现该类接口不需要重新创建一个排序的类,使用接口compareble接口排序,只要重写里面的compareTo()方法

 

Collections类是一个包装类,它包含有各种有关集合操作的静态方法。就像一个工具类。

Collections.sort()

sort()排序方法,根据元素的自然排序对指定列表按升序进行排序

public static void sort(List list,Comparator<>),根据指定比较器产生的顺序对指定列表进行排序,此列表内的所有元素都必须可使用指定的比较器相互比较

参数:list——要排序的列表
         C——确定列表顺序的比较器

关于Java中的Compare和Comparator的使用方法就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果喜欢这篇文章,不如把它分享出去让更多的人看到。


网站题目:Java中的Compare和Comparator的使用方法
地址分享:http://bjjierui.cn/article/ieiohh.html

其他资讯