Java Double.compare()方法

原文:https://www.studytonight.com/java-wrapper-class/java-double-compare-method

Java compare()方法属于Double 类。此方法用于比较两个双精度值的数值,找出哪个值大于另一个值。

compare(double x,double y) 方法返回该值

  • 0;如果 x 和 y 的值相等。

  • -1;如果 x 的值小于 y。

  • 1;如果 x 的值大于 y。

语法:

public static int compare(double d1, double d2)

参数:

传递的参数由两个浮点值double d1double d2 组成,分别代表要比较的第一个和第二个双精度值。

返回:

根据 d1 和 d2 的值,返回值 0,1,-1。

例 1:

这里,四个值 n1、n2、n3、n4 取各自的双值,并检查这些值是小于、大于还是等于比较值。

import java.lang.Double;

public class StudyTonight 
{  
    public static void main(String[] args) 
     {          
      double n1 = 100.0;  
      double n2 = 200.0;  
      double n3 = 300.0;  
      double n4 = 100.0;  

        System.out.println(Double.compare(n1, n2));  //Output will be less than zero

        System.out.println(Double.compare(n3, n1)); // Output will be greater than zero  

        System.out.println(Double.compare(n1,n4));  // Output will be equal to zero
      }  
}

-1 1 0

例 2:

这里,在一个数组中取四个双精度值 n1、n2、n3、n4,并检查这些值与数组的第一个值相比是更小、更多还是相等。

import java.lang.Double;

public class StudyTonight 
{  
    public static void main(String[] args) 
    {          
      double []n = {-100.0,-200.0,300.0,-100.0};  

       for(int i=0;i<4;i++)

       {
          System.out.println(Double.compare(n[0], n[i]));  

       }  
    } 
}

0 1 -1 0

例 3:

这里有一个通用的例子,用户可以输入他选择的数字并获得所需的输出。trycatch块用于处理程序执行期间发生的任何异常。(例如,用户输入字符串等。代替双精度值)。

import java.util.Scanner; 
import java.lang.Double;
public class StudyTonight 
{  
    public static void main(String[] args) 
    {      
        Scanner sc = new Scanner(System.in);  
        System.out.print("Enter first and second number ");  
          try
          {
           double n1 = sc.nextDouble();  
           double n2 = sc.nextDouble();  
           int r =  Double.compare(n1, n2);    
             if(r > 0)
              {  
               System.out.println("first number is greater");  
              }
              else if(r< 0) 
              {  
                System.out.println("second number is greater");  
              } 
              else
              {  
               System.out.println("both numbers are equal");
              }
           }
          catch(Exception e)
           {
            System.out.println("Error!!");
           }

      }  
 }

输入第一个和第二个数字 895.88 -556.9 第一个数字较大

                                                                        • 输入第一个和第二个数字-88.99 -8.009 第二个数字较大 **输入第一个和第二个数字 0x556 0x778 错误!!

实时示例:

在这里,您可以测试实时代码示例。您可以为不同的值执行示例,甚至可以编辑和编写您的示例来测试 Java 代码。