Método Int32.CompareTo en C# con ejemplos

El método Int32.CompareTo se usa para comparar la instancia actual con un objeto específico o Int32 y devuelve un signo de sus valores relativos. Hay 2 métodos en la lista de sobrecarga de este método de la siguiente manera:

  • Comparar con (Int32) Método
  • Comparar con (objeto) Método

Método Int32.CompareTo(Int32)

Este método se utiliza para comparar la instancia actual con un entero con signo de 32 bits especificado y devuelve un signo de sus valores relativos.

Sintaxis:

public int CompareTo (int value);

Aquí, se necesita un entero para comparar.

Valor de retorno: Devuelve un número de 32 bits con signo que indica los valores relativos de la instancia actual y el parámetro de valor de la siguiente manera:

  • Menos de cero: si instancia actual < valor
  • Cero: si Instancia actual = valor
  • Mayor que cero: si instancia actual > valor

Los siguientes programas ilustran el uso del método mencionado anteriormente:

Ejemplo 1:

// C# program to demonstrate the
// Int32.CompareTo(Int32) Method
using System;
  
class GFG {
  
    // Main Method
    public static void Main()
    {
  
        // Declaring and initializing value1
        int value1 = 10;
  
        // Declaring and initializing value2
        int value2 = 20;
  
        // 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);
    }
}
Producción:

10 is less than 20

Ejemplo 2:

// C# program to demonstrate the
// Int32.CompareTo(Int32) Method
using System;
  
class GFG {
  
    // Main Method
    public static void Main()
    {
        // calling get() method
        get(5, 7);
        get(3025, 3025);
        get(10, 20);
        get(7, -12);
    }
  
    // defining get() method
    public static void get(int value1,
                           int value2)
    {
  
        // using the 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);
    }
}
Producción:

5 is less than 7
3025 is equal to 3025
10 is less than 20
7 is greater than -12

Método Int32.CompareTo(Objeto)

Este método se usa para comparar la instancia actual con un objeto específico y devuelve un signo de sus valores relativos.

Sintaxis:

public int CompareTo (object value);

Aquí, se necesita un objeto para comparar o anular.

Valor de retorno: Devuelve un número de 32 bits con signo que indica los valores relativos de la instancia actual y el parámetro de valor de la siguiente manera:

  • Menos de cero: si instancia actual < valor
  • Cero: si Instancia actual = valor
  • Mayor que cero: si Instancia actual > valor o valor es nulo.

Excepción: lanza ArgumentException si el valor no es un Int32 .

Los siguientes programas ilustran el uso del método mencionado anteriormente:

Ejemplo 1:

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

10 is less than 562587

Ejemplo 2: para ArgumentException

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

value2 must be Int32
Exception Thrown: System.ArgumentException

Referencia:

Publicación traducida automáticamente

Artículo escrito por Kirti_Mangal y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *