Редагувати

Поділитися через


Tuple<T1,T2,T3,T4,T5,T6,T7>.Equals(Object) Method

Definition

Returns a value that indicates whether the current Tuple<T1,T2,T3,T4,T5,T6,T7> object is equal to a specified object.

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

Parameters

obj
Object

The object to compare with this instance.

Returns

true if the current instance is equal to the specified object; otherwise, false.

Examples

The following example defines an array of sextuples that contain population data for Los Angeles and New York from 1950 to 2000. The first component of each septuple identifies the city. The first, third, and fourth septuples contain data for New York. The first septuple is a duplicate of the fourth septuple. The third septuple identifies the city as "New York City" instead of "New York". As the example shows, only the fourth septuple is equal to the first septuple.

using System;

public class Example
{
   public static void Main()
   {
      // Get population data for New York City and Los Angeles, 1960-2000.
      Tuple<string, int, int, int, int, int, int>[] urbanPopulations =
           { Tuple.Create("New York", 7891957, 7781984, 7894862, 7071639, 7322564, 8008278),
             Tuple.Create("Los Angeles", 1970358, 2479015, 2816061, 2966850, 3485398, 3694820),
             Tuple.Create("New York City", 7891957, 7781984, 7894862, 7071639, 7322564, 8008278),
             Tuple.Create("New York", 7891957, 7781984, 7894862, 7071639, 7322564, 8008278) };
      // Compare each tuple with every other tuple for equality.
      for (int ctr = 0; ctr <= urbanPopulations.Length - 2; ctr++)
      {                      
         var urbanPopulation = urbanPopulations[ctr];
         Console.WriteLine(urbanPopulation.ToString() + " = ");
         for (int innerCtr = ctr +1; innerCtr <= urbanPopulations.Length - 1; innerCtr++)
            Console.WriteLine("   {0}: {1}", urbanPopulations[innerCtr], 
                              urbanPopulation.Equals(urbanPopulations[innerCtr]));
         Console.WriteLine();
      }   
   }
}
// The example displays the following output:
//    (New York, 7891957, 7781984, 7894862, 7071639, 7322564, 8008278) =
//       (Los Angeles, 1970358, 2479015, 2816061, 2966850, 3485398, 3694820): False
//       (New York City, 7891957, 7781984, 7894862, 7071639, 7322564, 8008278): False
//       (New York, 7891957, 7781984, 7894862, 7071639, 7322564, 8008278): True
//    
//    (Los Angeles, 1970358, 2479015, 2816061, 2966850, 3485398, 3694820) =
//       (New York City, 7891957, 7781984, 7894862, 7071639, 7322564, 8008278): False
//       (New York, 7891957, 7781984, 7894862, 7071639, 7322564, 8008278): False
//    
//    (New York City, 7891957, 7781984, 7894862, 7071639, 7322564, 8008278) =
//       (New York, 7891957, 7781984, 7894862, 7071639, 7322564, 8008278): False
open System

// Get population data for New York City and Los Angeles, 1960-2000.
let urbanPopulations =
    [| Tuple.Create("New York", 7891957, 7781984, 7894862, 7071639, 7322564, 8008278)
       Tuple.Create("Los Angeles", 1970358, 2479015, 2816061, 2966850, 3485398, 3694820)
       Tuple.Create("New York City", 7891957, 7781984, 7894862, 7071639, 7322564, 8008278)
       Tuple.Create("New York", 7891957, 7781984, 7894862, 7071639, 7322564, 8008278) |]
// Compare each tuple with every other tuple for equality.
for ctr = 0 to urbanPopulations.Length - 2 do
    let urbanPopulation = urbanPopulations[ctr]
    printfn $"{urbanPopulation} = "
    for innerCtr = ctr + 1 to urbanPopulations.Length - 1 do
        printfn $"   {urbanPopulations[innerCtr]}: {urbanPopulation.Equals urbanPopulations[innerCtr]}"
    printfn ""
// The example displays the following output:
//    (New York, 7891957, 7781984, 7894862, 7071639, 7322564, 8008278) =
//       (Los Angeles, 1970358, 2479015, 2816061, 2966850, 3485398, 3694820): False
//       (New York City, 7891957, 7781984, 7894862, 7071639, 7322564, 8008278): False
//       (New York, 7891957, 7781984, 7894862, 7071639, 7322564, 8008278): True
//    
//    (Los Angeles, 1970358, 2479015, 2816061, 2966850, 3485398, 3694820) =
//       (New York City, 7891957, 7781984, 7894862, 7071639, 7322564, 8008278): False
//       (New York, 7891957, 7781984, 7894862, 7071639, 7322564, 8008278): False
//    
//    (New York City, 7891957, 7781984, 7894862, 7071639, 7322564, 8008278) =
//       (New York, 7891957, 7781984, 7894862, 7071639, 7322564, 8008278): False
Module Example
   Public Sub Main()
      ' Get population data for New York City and Los Angeles, 1960-2000.
      Dim urbanPopulations() =
           { Tuple.Create("New York", 7891957, 7781984, 7894862, 
                          7071639, 7322564, 8008278),
             Tuple.Create("Los Angeles", 1970358, 2479015, 2816061, 
                          2966850, 3485398, 3694820),
             Tuple.Create("New York City", 7891957, 7781984, 7894862, 
                          7071639, 7322564, 8008278),
             Tuple.Create("New York", 7891957, 7781984, 7894862, 
                          7071639, 7322564, 8008278) }
      ' Compare each tuple with every other tuple for equality.
      For ctr As Integer = 0 To urbanPopulations.Length - 2                      
         Dim urbanPopulation = urbanPopulations(ctr)
         Console.WriteLine(urbanPopulation.ToString() + " = ")
         For innerCtr As Integer = ctr + 1 To urbanPopulations.Length - 1
            Console.WriteLine("   {0}: {1}", urbanPopulations(innerCtr), _
                              urbanPopulation.Equals(urbanPopulations(innerCtr)))
         Next
         Console.WriteLine()
      Next
   End Sub
End Module
' The example displays the following output:
'    (New York, 7891957, 7781984, 7894862, 7071639, 7322564, 8008278) =
'       (Los Angeles, 1970358, 2479015, 2816061, 2966850, 3485398, 3694820): False
'       (New York City, 7891957, 7781984, 7894862, 7071639, 7322564, 8008278): False
'       (New York, 7891957, 7781984, 7894862, 7071639, 7322564, 8008278): True
'    
'    (Los Angeles, 1970358, 2479015, 2816061, 2966850, 3485398, 3694820) =
'       (New York City, 7891957, 7781984, 7894862, 7071639, 7322564, 8008278): False
'       (New York, 7891957, 7781984, 7894862, 7071639, 7322564, 8008278): False
'    
'    (New York City, 7891957, 7781984, 7894862, 7071639, 7322564, 8008278) =
'       (New York, 7891957, 7781984, 7894862, 7071639, 7322564, 8008278): False

Remarks

The obj parameter is considered to be equal to the current instance under the following conditions:

  • It is a Tuple<T1,T2,T3,T4,T5,T6,T7> object.

  • Its seven components are of the same types as the current instance.

  • Its seven components are equal to those of the current instance. Equality is determined by the default object equality comparer for each component.

Applies to