模块  java.base
软件包  java.lang

Interface Comparable<T>

    • 方法详细信息

      • compareTo

        int compareTo​(T o)
        将此对象与指定的对象进行比较以获得顺序。 返回负整数,零或正整数,因为此对象小于,等于或大于指定对象。

        实现程序必须确保sgn(x.compareTo(y)) == -sgn(y.compareTo(x))所有xy (这意味着x.compareTo(y) IFF必须抛出一个异常y.compareTo(x)抛出一个异常。)

        实现者还必须确保该关系是可传递的: (x.compareTo(y) > 0 && y.compareTo(z) > 0)意味着x.compareTo(z) > 0

        最后,实现者必须确保x.compareTo(y)==0暗示sgn(x.compareTo(z)) == sgn(y.compareTo(z)) ,对于所有z

        强烈建议,但严格要求(x.compareTo(y)==0) == (x.equals(y)) 一般来说,任何实现Comparable接口且违反此条件的类都应清楚地表明这一事实。 推荐的语言是“注意:此类具有与equals不一致的自然顺序。”

        在前面的描述中,符号sgn( 表达 )表示数学符号函数,其被定义为返回之一-10 ,或1分别根据表达式的值是否为负,零或正。

        参数
        o - 要比较的对象。
        结果
        一个负整数,零或正整数,因为此对象小于,等于或大于指定的对象。
        异常
        NullPointerException - 如果指定的对象为null
        ClassCastException - 如果指定对象的类型阻止将其与此对象进行比较。