Module  java.base
软件包  java.lang

Interface Comparable<T>

    • 方法摘要

      所有方法  接口方法  抽象方法 
      Modifier and Type 方法 描述
      int compareTo​(T o)
      将此对象与指定的对象进行比较以进行排序。
    • 方法详细信息

      • 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 - 如果指定的对象为空
        ClassCastException - 如果指定的对象的类型阻止它与该对象进行比较。