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