Tuple<T1,T2,T3,T4,T5,T6,T7>.Equals(Object) Метод

Определение

Возвращает значение, показывающее, равен ли текущий объект Tuple<T1,T2,T3,T4,T5,T6,T7> указанному объекту.

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

Параметры

obj
Object

Объект, сравниваемый с данным экземпляром.

Возвращаемое значение

Boolean

Значение true, если текущий экземпляр равен указанному объекту; в противном случае — false.

Примеры

В следующем примере определяется массив секступлей, содержащий данные о популяции для Лос-Анджелеса и Нью-йорка с 1950 по 2000 год. Первый компонент каждого разделителя идентифицирует город. Первый, третий и четвертый septuples содержат данные для Нью-йорка. Первый разделителя является дубликатом четвертого разделителя. Третий раздел определяет город как "Нью-йорк" вместо "Нью-йорка". Как показано в примере, только четвертый раздел равен первому разделу.

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

Комментарии

Параметр obj считается равным текущему экземпляру в следующих условиях:

  • Tuple<T1,T2,T3,T4,T5,T6,T7> Это объект.

  • Его семь компонентов относятся к тем же типам, что и текущий экземпляр.

  • Его семь компонентов равны тем, которые имеют текущий экземпляр. Равенство определяется компаратором равенства объектов по умолчанию для каждого компонента.

Применяется к