Double.CompareTo Method in C# with Examples - GeeksforGeeks

19 Mar, 2019
Double.CompareTo Method is used to compare the current instance to a specified object or Double object. It will return an integer which shows whether the value of the current instance is greater than, less than or equal to the value of the specified object or Double object. There are 2 methods in the overload list of this method as follows:
CompareTo(Double) Method
CompareTo(Object) Method
Double.CompareTo() Method is used to compare the current instance to a specified double-precision floating-point number and returns an integer which shows whether the value of this instance is less than, equal to, or greater than the value of the specified double-precision floating-point number.
Syntax:
public int CompareTo (double value);
Here, it takes a double-precision floating-point number to compare.
Return Value: This method returns a signed number indicating the relative values of this instance and value.
Less than zero: This instance is less than value or this instance is not a number (NaN) and value is a number.
Zero: This instance is equal to value or both this instance and value are not a number (NaN), PositiveInfinity, or NegativeInfinity.
Greater than zero: This instance is greater than value or this instance is a number and value is not a number (NaN).
Below programs illustrate the use of Double.CompareTo(Double) Method:
Example 1:
// C# program to demonstrate the// Double.CompareTo(Double)// Methodusing System;using System.Globalization;  class GFG {      // Main Method    public static void Main()    {        // Declaring and initializing value1        double value1 = 10d;          // Declaring and initializing value2        double value2 = 20d;          // compare both double value        // using CompareTo() method        int status = value1.CompareTo(value2);          // checking the status        if (status > 0)            Console.WriteLine("{0} is greater than {1}",                                       value1, value2);        else if (status < 0)            Console.WriteLine("{0} is less than {1}",                                     value1, value2);        else            Console.WriteLine("{0} is equal to {1}",                                    value1, value2);    }}
10 is less than 20

Example 2:
// C# program to demonstrate the// Double.CompareTo(Double)// Methodusing System;using System.Globalization;  class GFG {      // Main Method    public static void Main()    {        // calling get() method        get(5d, 7d);        get(5.5d, 4.5d);        get(10d, 20d);        get(7.5d, 19.5d);    }      // defining get() method    public static void get(double value1,                           double value2)    {          // compare both double value        // using CompareTo() method        int status = value1.CompareTo(value2);          // checking the status        if (status > 0)            Console.WriteLine("{0} is greater than {1}",                                        value1, value2);        else if (status < 0)            Console.WriteLine("{0} is less than {1}",                                     value1, value2);        else            Console.WriteLine("{0} is equal to {1}",                                    value1, value2);    }}
5 is less than 7
5.5 is greater than 4.5
10 is less than 20
7.5 is less than 19.5

Double.CompareTo() Method is used to compare the current instance to a specified object and returns an integer which indicates whether the value of the current instance is less than, equal to, or greater than the value of the specified object.
Syntax:
public int CompareTo (object value);
Here, it takes an object to compare, or null.
Return Value: This method returns a signed number indicating the relative values of this instance and value.
Less than zero: This instance is less than value or this instance is not a number (NaN) and value is a number.
Zero: This instance is equal to value or both this instance and value are not a number (NaN), PositiveInfinity, or NegativeInfinity.
Greater than zero: This instance is greater than value or this instance is a number and value is not a number (NaN).
Exception: It throws ArgumentException if value is not a Double.
Below programs illustrate the use of Double.CompareTo(Object) Method:
Example 1:
// C# program to demonstrate the// Double.CompareTo(object)// Methodusing System;using System.Globalization;  class GFG {      // Main Method    public static void Main()    {        try {              // Declaring and initializing value1            double value1 = 10d;              // Declaring and initializing value2            object value2 = 20d;              // compare both double value            // using CompareTo() method            int status = value1.CompareTo(value2);              // checking the status            if (status > 0)                Console.WriteLine("{0} is greater than {1}",                                            value1, value2);            else if (status < 0)                Console.WriteLine("{0} is less than {1}",                                         value1, value2);            else                Console.WriteLine("{0} is equal to {1}",                                        value1, value2);        }          catch (ArgumentException e)         {            Console.WriteLine("value2 must be double");            Console.Write("Exception Thrown: ");            Console.Write("{0}", e.GetType(), e.Message);        }    }}
10 is less than 20

Example 2: For ArgumentException
// C# program to demonstrate the// Double.CompareTo(object)// Methodusing System;using System.Globalization;  class GFG {      // Main Method    public static void Main()    {        try {              // Declaring and initializing value1            double value1 = 10d;              // Declaring and initializing value2            object value2 = 1 / 3;              // compare both double value            // using CompareTo() method            int status = value1.CompareTo(value2);              // checking the status            if (status > 0)                Console.WriteLine("{0} is greater than {1}",                                            value1, value2);              else if (status < 0)                Console.WriteLine("{0} is less than {1}",                                         value1, value2);            else                Console.WriteLine("{0} is equal to {1}",                                        value1, value2);        }          catch (ArgumentException e)         {            Console.WriteLine("value2 must be double");            Console.Write("Exception Thrown: ");            Console.Write("{0}", e.GetType(), e.Message);        }    }}
value2 must be double
Exception Thrown: System.ArgumentException

Reference:
https://docs.microsoft.com/en-us/dotnet/api/system.double.compareto?view=netframework-4.7.2
CSharp-Double-Struct
CSharp-method
C#
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Comments
Old Comments
C# | Class and Object
Lambda Expressions in C#
HashSet in C# with Examples
C# | How to use strings in switch statement
C# | Replace() Method
C# | String.Contains() Method
Collections in C#
C# | Abstract Classes
C# | Data Types
Introduction to .NET Framework