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 the 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:
C#
// 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); } } |
10 is less than 20
Example 2:
C#
// 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); } } |
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 the 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:
C#
// 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); // 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); } } } |
10 is less than 987.654
Example 2: For ArgumentException
C#
// 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); } } } |
value2 must be decimal Exception Thrown: System.ArgumentException
Reference:
- https://docs.microsoft.com/en-us/dotnet/api/system.decimal.compareto?view=netframework-4.7.2