Comparteix a través de


Tuple<T1,T2,T3,T4,T5,T6,T7,TRest>.Equals(Object) Método

Definición

Devuelve un valor que indica si el objeto Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> actual es igual que el objeto especificado.

public:
 override bool Equals(System::Object ^ obj);
public override bool Equals (object obj);
public override bool Equals (object? obj);
override this.Equals : obj -> bool
Public Overrides Function Equals (obj As Object) As Boolean

Parámetros

obj
Object

Objeto que se va a comparar con esta instancia.

Devoluciones

true si la instancia actual es igual que el objeto especificado; en caso contrario, false.

Ejemplos

En el ejemplo siguiente se definen cinco Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> objetos que contienen números primos. A continuación, compara el primer objeto con cada uno de los objetos restantes. Como se muestra en la salida, solo los primeros y los últimos Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> objetos son iguales, ya que tienen un número idéntico de componentes con valores idénticos.

using System;

public class Class1
{
   public static void Main()
   {
      // Create five 8-tuple objects containing prime numbers.
      var prime1 = new Tuple<Int32, Int32, Int32, Int32, Int32, Int32, Int32, 
                           Tuple<Int32>> (2, 3, 5, 7, 11, 13, 17, 
                           new Tuple<Int32>(19));
      var prime2 = new Tuple<Int32, Int32, Int32, Int32, Int32, Int32, Int32, 
                           Tuple<Int32>> (23, 29, 31, 37, 41, 43, 47, 
                           new Tuple<Int32>(55));
      var prime3 = new Tuple<Int32, Int32, Int32, Int32, Int32, Int32, Int32, 
                           Tuple<Int32>> (3, 2, 5, 7, 11, 13, 17, 
                           new Tuple<Int32>(19)); 
      var prime4 = new Tuple<Int32, Int32, Int32, Int32, Int32, Int32, Int32, 
                           Tuple<Int32, Int32>> (2, 3, 5, 7, 11, 13, 17, 
                           new Tuple<Int32, Int32>(19, 23));
      var prime5 = new Tuple<Int32, Int32, Int32, Int32, Int32, Int32, Int32, 
                           Tuple<Int32>> (2, 3, 5, 7, 11, 13, 17, 
                           new Tuple<Int32>(19));
      Console.WriteLine("{0} = {1} : {2}", prime1, prime2, prime1.Equals(prime2));
      Console.WriteLine("{0} = {1} : {2}", prime1, prime3, prime1.Equals(prime3));
      Console.WriteLine("{0} = {1} : {2}", prime1, prime4, prime1.Equals(prime4));
      Console.WriteLine("{0} = {1} : {2}", prime1, prime5, prime1.Equals(prime5));
   }
}
// The example displays the following output:
//    (2, 3, 5, 7, 11, 13, 17, 19) = (23, 29, 31, 37, 41, 43, 47, 55) : False
//    (2, 3, 5, 7, 11, 13, 17, 19) = (3, 2, 5, 7, 11, 13, 17, 19) : False
//    (2, 3, 5, 7, 11, 13, 17, 19) = (2, 3, 5, 7, 11, 13, 17, 19, 23) : False
//    (2, 3, 5, 7, 11, 13, 17, 19) = (2, 3, 5, 7, 11, 13, 17, 19) : True
open System

// Create five 8-tuple objects containing prime numbers.
let prime1 = 
    new Tuple<Int32, Int32, Int32, Int32, Int32, Int32, Int32, 
        Tuple<Int32>> (2, 3, 5, 7, 11, 13, 17, 
        new Tuple<Int32>(19))
let prime2 = 
    new Tuple<Int32, Int32, Int32, Int32, Int32, Int32, Int32, 
        Tuple<Int32>> (23, 29, 31, 37, 41, 43, 47, 
        new Tuple<Int32>(55))
let prime3 = 
    new Tuple<Int32, Int32, Int32, Int32, Int32, Int32, Int32, 
        Tuple<Int32>> (3, 2, 5, 7, 11, 13, 17, 
        new Tuple<Int32>(19)) 
let prime4 = 
    new Tuple<Int32, Int32, Int32, Int32, Int32, Int32, Int32, 
        Tuple<Int32, Int32>> (2, 3, 5, 7, 11, 13, 17, 
        new Tuple<Int32, Int32>(19, 23))
let prime5 = 
    new Tuple<Int32, Int32, Int32, Int32, Int32, Int32, Int32, 
        Tuple<Int32>> (2, 3, 5, 7, 11, 13, 17, 
        new Tuple<Int32>(19))
printfn $"{prime1} = {prime2} : {prime1.Equals prime2}"
printfn $"{prime1} = {prime3} : {prime1.Equals prime3}"
printfn $"{prime1} = {prime4} : {prime1.Equals prime4}"
printfn $"{prime1} = {prime5} : {prime1.Equals prime5}"
// The example displays the following output:
//    (2, 3, 5, 7, 11, 13, 17, 19) = (23, 29, 31, 37, 41, 43, 47, 55) : False
//    (2, 3, 5, 7, 11, 13, 17, 19) = (3, 2, 5, 7, 11, 13, 17, 19) : False
//    (2, 3, 5, 7, 11, 13, 17, 19) = (2, 3, 5, 7, 11, 13, 17, 19, 23) : False
//    (2, 3, 5, 7, 11, 13, 17, 19) = (2, 3, 5, 7, 11, 13, 17, 19) : True
Module Example
   Public Sub Main()
      ' Create five 8-tuple objects containing prime numbers.
      Dim prime1 = New Tuple(Of Int32, Int32, Int32, Int32, Int32, Int32, Int32, 
                           Tuple(Of Int32)) (2, 3, 5, 7, 11, 13, 17, 
                           New Tuple(Of Int32)(19))
      Dim prime2 = New Tuple(Of Int32, Int32, Int32, Int32, Int32, Int32, Int32, 
                           Tuple(Of Int32)) (23, 29, 31, 37, 41, 43, 47, 
                           New Tuple(Of Int32)(55)) 
      Dim prime3 = New Tuple(Of Int32, Int32, Int32, Int32, Int32, Int32, Int32, 
                           Tuple(Of Int32)) (3, 2, 5, 7, 11, 13, 17, 
                           New Tuple(Of Int32)(19)) 
      Dim prime4 = New Tuple(Of Int32, Int32, Int32, Int32, Int32, Int32, Int32, 
                           Tuple(Of Int32, Int32)) (2, 3, 5, 7, 11, 13, 17, 
                           New Tuple(Of Int32, Int32)(19, 23))
      Dim prime5 = New Tuple(Of Int32, Int32, Int32, Int32, Int32, Int32, Int32, 
                           Tuple(Of Int32)) (2, 3, 5, 7, 11, 13, 17, 
                           New Tuple(Of Int32)(19))
      Console.WriteLine("{0} = {1} : {2}", prime1, prime2, prime1.Equals(prime2))
      Console.WriteLine("{0} = {1} : {2}", prime1, prime3, prime1.Equals(prime3))
      Console.WriteLine("{0} = {1} : {2}", prime1, prime4, prime1.Equals(prime4))
      Console.WriteLine("{0} = {1} : {2}", prime1, prime5, prime1.Equals(prime5))
   End Sub
End Module
' The example displays the following output:
'    (2, 3, 5, 7, 11, 13, 17, 19) = (23, 29, 31, 37, 41, 43, 47, 55) : False
'    (2, 3, 5, 7, 11, 13, 17, 19) = (3, 2, 5, 7, 11, 13, 17, 19) : False
'    (2, 3, 5, 7, 11, 13, 17, 19) = (2, 3, 5, 7, 11, 13, 17, 19, 23) : False
'    (2, 3, 5, 7, 11, 13, 17, 19) = (2, 3, 5, 7, 11, 13, 17, 19) : True

Comentarios

El obj parámetro se considera igual a la instancia actual si cumple todas las condiciones siguientes:

  • Es un Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> objeto .

  • Tiene el mismo número total de componentes que son de los mismos tipos que la instancia actual.

  • Sus componentes (incluidos sus componentes anidados) son iguales a los de la instancia actual. La igualdad se determina mediante el comparador de igualdad predeterminado para cada componente.

Se aplica a