📜  Java中的 Double.compareTo() 方法及示例

📅  最后修改于: 2022-05-13 01:54:42.243000             🧑  作者: Mango

Java中的 Double.compareTo() 方法及示例

Java.lang.Double.compareTo()是Java中的一个内置方法,用于对两个 Double 对象进行数值比较。如果此对象等于参数对象,则此方法返回 0,如果此对象在数值上小于参数对象,则返回小于 0,如果此对象在数值上大于参数对象,则返回大于 0 的值。

句法:

public int compareTo(Object obj)

参数:该方法接受一个参数。
obj - 要与之比较的对象。

返回值:该函数可以返回三个值:

  • 等于 0:对象等于参数对象
  • 小于 0:对象小于参数对象
  • 大于 0:对象大于参数对象

下面的程序说明了Java.lang.Double.compareTo() 方法的工作:

程序 1:当两个对象不同时。

// Java program to demonstrate
// of java.lang.Double.compareTo() method
import java.lang.Math;
  
class Gfg1 {
  
    // Driver code
    public static void main(String args[])
    {
  
        // When two objects are different
        Double obj1 = new Double(124);
        Double obj2 = new Double(167);
        int compareValue = obj1.compareTo(obj2);
  
        if (compareValue == 0)
            System.out.println("object1 and object2 are equal");
        else if (compareValue < 0)
            System.out.println("object1 is less than object2");
        else
            System.out.println("object1 is greater than object2");
    }
}
输出:
object1 is less than object2

程序 2:当没有参数传递时。

// Java program to demonstrate
// of java.lang.Double.compareTo() method
import java.lang.Math;
  
class Gfg1 {
  
    // Driver code
    public static void main(String args[])
    {
        // When no argument is passed
        Double obj1 = new Double(124);
        Double obj2 = new Double(167);
  
        int compareValue = obj1.compareTo();
  
        if (compareValue == 0)
            System.out.println("object1 and object2 are equal");
        else if (compareValue < 0)
            System.out.println("object1 is less than object2");
        else
            System.out.println("object1 is greater than object2");
    }
}

输出:

prog.java:14: error: method compareTo in class Double 
cannot be applied to given types;
        int compareValue = obj1.compareTo();
                               ^
  required: Double
  found: no arguments
  reason: actual and formal argument lists differ in length
1 error

程序 3:当对象以外的任何东西作为参数传递时。

// Java program to demonstrate
// of java.lang.Double.compareTo() method
import java.lang.Math;
  
class Gfg1 {
  
    // Driver code
    public static void main(String args[])
    {
  
        // When anything other than object
        // argument is passed
        Double obj1 = new Double(124);
  
        int compareValue = obj1.compareTo("gfg");
  
        if (compareValue == 0)
            System.out.println("object1 and object2 are equal");
        else if (compareValue < 0)
            System.out.println("object1 is less than object2");
        else
            System.out.println("object1 is greater than object2");
    }
}

输出:

prog.java:15: error: incompatible types: String cannot be converted to Double
        int compareValue = obj1.compareTo("gfg");
                                          ^
Note: Some messages have been simplified; recompile with 
-Xdiags:verbose to get full output
1 error