Decimal.CompareTo() Method in C#

This method is used to compare the current instance to a specified object or Decimal and returns an indication of their relative values. There are 2 methods in the overload list of this method as follows:

  • CompareTo(Decimal) Method
  • CompareTo(Object) Method

Decimal.CompareTo(Decimal) Method

This method is used to compare the current instance to a specified Decimal object and returns a comparison of their relative values.

Syntax:

public int CompareTo (decimal value);

Here, it takes the object to compare with this instance.



Return Value: It returns a 32-bit signed number indicating the relative values of current instance and value parameter as follows:

  • Less than Zero: if Current Instance < value
  • Zero: if Current Instance = value
  • Greater than Zero: if Current Instance > value

Below programs illustrate the use of Decimal.CompareTo(Decimal) Method

Example 1:

filter_none

edit
close

play_arrow

link
brightness_4
code

// C# program to demonstrate the
// Decimal.CompareTo(Double) Method
using System;
  
class GFG {
  
    // Main Method
    public static void Main()
    {
  
        // Declaring and initializing value1
        decimal value1 = 10;
  
        // Declaring and initializing value2
        decimal value2 = 20;
  
        // compare both decimal 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);
    }
}

chevron_right


Output:

10 is less than 20

Example 2:

filter_none

edit
close

play_arrow

link
brightness_4
code

// C# program to demonstrate the
// Decimal.CompareTo(Double) Method
using System;
  
class GFG {
  
    // Main Method
    public static void Main()
    {
        // calling get() method
        get(5, 7);
        get(30, 20);
        get(10, 20);
        get(7, -12);
    }
  
    // defining get() method
    public static void get(decimal value1,
                          decimal value2)
    {
  
        // 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);
    }
}

chevron_right


Output:

5 is less than 7
30 is greater than 20
10 is less than 20
7 is greater than -12

Decimal.CompareTo(Object) Method

This method is used to compare the current instance to a specified object and returns a comparison of their relative values.

Syntax:

public int CompareTo (object value);

Here, it takes the object to compare with this instance, or null.

Return Value: It returns a 32-bit signed number indicating the relative values of current instance and value parameter as follows:



  • Less than Zero: if Current Instance < value
  • Zero: if Current Instance = value
  • Greater than Zero: if Current Instance > value

Exception: It throws ArgumentException if value is not a null.

Below programs illustrate the use of Decimal.CompareTo(Object) Method

Example 1:

filter_none

edit
close

play_arrow

link
brightness_4
code

// C# program to demonstrate the
// Decimal.CompareTo(object) Method
using System;
  
class GFG {
  
    // Main Method
    public static void Main()
    {
        try {
  
            // Declaring and initializing value1
            decimal value1 = 10;
  
            // Declaring and initializing value2
            object value2 = (decimal)9.8765400E+2;
  
            // compare both decimal value
            // using CompareTo() method
            int status = value1.CompareTo(value2);
  
            // cheking 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 decimal");
            Console.Write("Exception Thrown: ");
            Console.Write("{0}", e.GetType(), e.Message);
        }
    }
}

chevron_right


Output:

10 is less than 987.654

Example 2: For ArgumentException

filter_none

edit
close

play_arrow

link
brightness_4
code

// C# program to demonstrate the
// Decimal.CompareTo(object) Method
using System;
using System.Globalization;
  
class GFG {
  
    // Main Method
    public static void Main()
    {
        try {
  
            // Declaring and initializing value1
            decimal value1 = 10;
  
            // Declaring and initializing value2
            object value2 = 1 / 3;
  
            // 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 decimal");
            Console.Write("Exception Thrown: ");
            Console.Write("{0}", e.GetType(), e.Message);
        }
    }
}

chevron_right


Output:

value2 must be decimal
Exception Thrown: System.ArgumentException

Reference:



My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.




Article Tags :

Be the First to upvote.


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.