Tuple<T1,T2,T3,T4>.Equals(Object) Metod

Definition

Returnerar ett värde som anger om det aktuella Tuple<T1,T2,T3,T4> objektet är lika med ett angivet objekt.

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

Parametrar

obj
Object

Det objekt som ska jämföras med den här instansen.

Returer

trueom den aktuella instansen är lika med det angivna objektet; annars . false

Exempel

I följande exempel definieras en matris med Tuple<T1,T2,T3,T4> objekt som tillhandahåller data om temperaturer vid tre tillfällen under en viss dag. Metoden Equals(Object) anropas för att jämföra varje Tuple<T1,T2,T3,T4> objekt med alla andra Tuple<T1,T2,T3,T4> objekt. Utdata visar att Equals(Object) metoden endast returnerar true när alla fyra komponenterna i objekten Tuple<T1,T2,T3,T4> har samma värden.

using System;

public class Class1
{
   public static void Main()
   {
      Tuple<DateTime, double, double, double>[] temperatures = 
            { Tuple.Create(new DateTime(2009, 1, 16), 3.0, 5.0, 4.0),
              Tuple.Create(new DateTime(2009, 4, 22), 9.0, 14.0, 11.0), 
              Tuple.Create(new DateTime(2009, 4, 22), 9.0, 14.0, 10.0),
              Tuple.Create(new DateTime(2009, 6, 1), 23.0, 28.0, 21.0),
              Tuple.Create(new DateTime(2009, 4, 22), 9.0, 14.0, 11.0),
              Tuple.Create(new DateTime(2009, 9, 6), 25.0, 30.0, 25.0) }; 
      // Compare each item with every other item for equality.
      for (int ctr = 0; ctr < temperatures.Length; ctr++)
      {
         var temperatureInfo = temperatures[ctr];
         for (int ctr2 = ctr + 1; ctr2 < temperatures.Length; ctr2++)
            Console.WriteLine("{0} = {1}: {2}", temperatureInfo, temperatures[ctr2], 
                                                temperatureInfo.Equals(temperatures[ctr2]));
         Console.WriteLine();
      }   
   }
}
// The example displays the following output:
//    (1/16/2009 12:00:00 AM, 3, 5, 4) = (4/22/2009 12:00:00 AM, 9, 14, 11): False
//    (1/16/2009 12:00:00 AM, 3, 5, 4) = (4/22/2009 12:00:00 AM, 9, 14, 10): False
//    (1/16/2009 12:00:00 AM, 3, 5, 4) = (6/1/2009 12:00:00 AM, 23, 28, 21): False
//    (1/16/2009 12:00:00 AM, 3, 5, 4) = (4/22/2009 12:00:00 AM, 9, 14, 11): False
//    (1/16/2009 12:00:00 AM, 3, 5, 4) = (9/6/2009 12:00:00 AM, 25, 30, 25): False
//    
//    (4/22/2009 12:00:00 AM, 9, 14, 11) = (4/22/2009 12:00:00 AM, 9, 14, 10): False
//    (4/22/2009 12:00:00 AM, 9, 14, 11) = (6/1/2009 12:00:00 AM, 23, 28, 21): False
//    (4/22/2009 12:00:00 AM, 9, 14, 11) = (4/22/2009 12:00:00 AM, 9, 14, 11): True
//    (4/22/2009 12:00:00 AM, 9, 14, 11) = (9/6/2009 12:00:00 AM, 25, 30, 25): False
//    
//    (4/22/2009 12:00:00 AM, 9, 14, 10) = (6/1/2009 12:00:00 AM, 23, 28, 21): False
//    (4/22/2009 12:00:00 AM, 9, 14, 10) = (4/22/2009 12:00:00 AM, 9, 14, 11): False
//    (4/22/2009 12:00:00 AM, 9, 14, 10) = (9/6/2009 12:00:00 AM, 25, 30, 25): False
//    
//    (6/1/2009 12:00:00 AM, 23, 28, 21) = (4/22/2009 12:00:00 AM, 9, 14, 11): False
//    (6/1/2009 12:00:00 AM, 23, 28, 21) = (9/6/2009 12:00:00 AM, 25, 30, 25): False
//    
//    (4/22/2009 12:00:00 AM, 9, 14, 11) = (9/6/2009 12:00:00 AM, 25, 30, 25): False
open System

let temperatures = 
    [| Tuple.Create(DateTime(2009, 1, 16), 3.0, 5.0, 4.0)
       Tuple.Create(DateTime(2009, 4, 22), 9.0, 14.0, 11.0)
       Tuple.Create(DateTime(2009, 4, 22), 9.0, 14.0, 10.0)
       Tuple.Create(DateTime(2009, 6, 1), 23.0, 28.0, 21.0)
       Tuple.Create(DateTime(2009, 4, 22), 9.0, 14.0, 11.0)
       Tuple.Create(DateTime(2009, 9, 6), 25.0, 30.0, 25.0) |]

// Compare each item with every other item for equality.
for ctr = 0 to temperatures.Length - 1 do
    let temperatureInfo = temperatures[ctr]
    for ctr2 = ctr + 1 to temperatures.Length - 1 do
        printfn $"{temperatureInfo} = {temperatures[ctr2]}: {temperatureInfo.Equals temperatures[ctr2]}"
    printfn ""   
// The example displays the following output:
//    (1/16/2009 12:00:00 AM, 3, 5, 4) = (4/22/2009 12:00:00 AM, 9, 14, 11): False
//    (1/16/2009 12:00:00 AM, 3, 5, 4) = (4/22/2009 12:00:00 AM, 9, 14, 10): False
//    (1/16/2009 12:00:00 AM, 3, 5, 4) = (6/1/2009 12:00:00 AM, 23, 28, 21): False
//    (1/16/2009 12:00:00 AM, 3, 5, 4) = (4/22/2009 12:00:00 AM, 9, 14, 11): False
//    (1/16/2009 12:00:00 AM, 3, 5, 4) = (9/6/2009 12:00:00 AM, 25, 30, 25): False
//    
//    (4/22/2009 12:00:00 AM, 9, 14, 11) = (4/22/2009 12:00:00 AM, 9, 14, 10): False
//    (4/22/2009 12:00:00 AM, 9, 14, 11) = (6/1/2009 12:00:00 AM, 23, 28, 21): False
//    (4/22/2009 12:00:00 AM, 9, 14, 11) = (4/22/2009 12:00:00 AM, 9, 14, 11): True
//    (4/22/2009 12:00:00 AM, 9, 14, 11) = (9/6/2009 12:00:00 AM, 25, 30, 25): False
//    
//    (4/22/2009 12:00:00 AM, 9, 14, 10) = (6/1/2009 12:00:00 AM, 23, 28, 21): False
//    (4/22/2009 12:00:00 AM, 9, 14, 10) = (4/22/2009 12:00:00 AM, 9, 14, 11): False
//    (4/22/2009 12:00:00 AM, 9, 14, 10) = (9/6/2009 12:00:00 AM, 25, 30, 25): False
//    
//    (6/1/2009 12:00:00 AM, 23, 28, 21) = (4/22/2009 12:00:00 AM, 9, 14, 11): False
//    (6/1/2009 12:00:00 AM, 23, 28, 21) = (9/6/2009 12:00:00 AM, 25, 30, 25): False
//    
//    (4/22/2009 12:00:00 AM, 9, 14, 11) = (9/6/2009 12:00:00 AM, 25, 30, 25): False
Module Example
   Public Sub Main()
      Dim temperatures() = 
              { Tuple.Create(#1/16/2009#, 3, 5, 4), _
                Tuple.Create(#4/22/2009#, 9, 14, 11), _ 
                Tuple.Create(#4/22/2009#, 9, 14, 10), _
                Tuple.Create(#6/01/2009#, 23, 28, 21), _
                Tuple.Create(#4/22/2009#, 9, 14, 11), _
                Tuple.Create(#9/06/2009#, 25, 30, 25) } 
      ' Compare each item with every other item for equality.
      For ctr As Integer = 0 To temperatures.Length - 1
         Dim temperatureInfo = temperatures(ctr)
         For ctr2 As Integer = ctr + 1 To temperatures.Length - 1
            Console.WriteLine("{0} = {1}: {2}", temperatureInfo, temperatures(ctr2), 
                                                temperatureInfo.Equals(temperatures(ctr2)))
         Next  
         Console.WriteLine()                                               
      Next
   End Sub
End Module
' The example displays the following output:
'    (1/16/2009 12:00:00 AM, 3, 5, 4) = (4/22/2009 12:00:00 AM, 9, 14, 11): False
'    (1/16/2009 12:00:00 AM, 3, 5, 4) = (4/22/2009 12:00:00 AM, 9, 14, 10): False
'    (1/16/2009 12:00:00 AM, 3, 5, 4) = (6/1/2009 12:00:00 AM, 23, 28, 21): False
'    (1/16/2009 12:00:00 AM, 3, 5, 4) = (4/22/2009 12:00:00 AM, 9, 14, 11): False
'    (1/16/2009 12:00:00 AM, 3, 5, 4) = (9/6/2009 12:00:00 AM, 25, 30, 25): False
'    
'    (4/22/2009 12:00:00 AM, 9, 14, 11) = (4/22/2009 12:00:00 AM, 9, 14, 10): False
'    (4/22/2009 12:00:00 AM, 9, 14, 11) = (6/1/2009 12:00:00 AM, 23, 28, 21): False
'    (4/22/2009 12:00:00 AM, 9, 14, 11) = (4/22/2009 12:00:00 AM, 9, 14, 11): True
'    (4/22/2009 12:00:00 AM, 9, 14, 11) = (9/6/2009 12:00:00 AM, 25, 30, 25): False
'    
'    (4/22/2009 12:00:00 AM, 9, 14, 10) = (6/1/2009 12:00:00 AM, 23, 28, 21): False
'    (4/22/2009 12:00:00 AM, 9, 14, 10) = (4/22/2009 12:00:00 AM, 9, 14, 11): False
'    (4/22/2009 12:00:00 AM, 9, 14, 10) = (9/6/2009 12:00:00 AM, 25, 30, 25): False
'    
'    (6/1/2009 12:00:00 AM, 23, 28, 21) = (4/22/2009 12:00:00 AM, 9, 14, 11): False
'    (6/1/2009 12:00:00 AM, 23, 28, 21) = (9/6/2009 12:00:00 AM, 25, 30, 25): False
'    
'    (4/22/2009 12:00:00 AM, 9, 14, 11) = (9/6/2009 12:00:00 AM, 25, 30, 25): False

Kommentarer

Parametern obj anses vara lika med den aktuella instansen under följande villkor:

  • Det är ett Tuple<T1,T2,T3,T4> objekt.

  • Dess fyra komponenter är av samma typ som den aktuella instansen.

  • Dess fyra komponenter är lika med den aktuella instansens. Likhet bestäms av standardvärdet för jämförelse av objektjämlikhet för varje komponent.

Gäller för