java~Comparable接口的说明

Comparable接口给对象提供了比较的能力,即对象实现了Comparable,它就可以向自然数一种,进行比较和排序了,而在这个接口里有个方法compareTo,那么这个方法里,返回-1,0,1时,如何理解它对接的排序关系呢,下面看个例子:

@Override
public int compareTo(Student o) {
    if (this.score > o.score)
        return -1;
    else if (this.score < o.score)
        return 1;
    else {
        if (this.age < o.age)
            return -1;
        else if (this.age > o.age)
            return 1;
        else
            return 0;
    }
}

上面是一个Student类型的比较器,下面说一下它的作用

比较score字段,大的排在前面
如果score相等,就比较age,小的排在前面
我们可以这样记它,在数轴上,-1,0,1总是这样出现的,所以,你让哪种条件返回-1,它就排到前面。

愿与诸君共进步,大量的面试题及答案还有资深架构师录制的视频录像:有Spring,MyBatis,Netty源码分析,高并发、高性能、分布式、微服务架构的原理,JVM性能优化、分布式架构等这些成为架构师必备的知识体系,可以微信搜索539413949获取,最后祝大家都能拿到自己心仪的offer

你可能感兴趣的:(java~Comparable接口的说明)