Tuple<T1,T2>.Equals(Object) Tuple<T1,T2>.Equals(Object) Tuple<T1,T2>.Equals(Object) Tuple<T1,T2>.Equals(Object) Method

Definition

Gibt einen Wert zurück, der angibt, ob das aktuelle Tuple<T1,T2>-Objekt gleich einem angegebenen Objekt ist.Returns a value that indicates whether the current Tuple<T1,T2> object is equal to a specified object.

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

Parameter

obj
Object Object Object Object

Das Objekt, das mit dieser Instanz verglichen werden soll.The object to compare with this instance.

Gibt zurück

true, wenn die aktuelle Instanz gleich dem angegebenen Objekt ist, andernfalls false.true if the current instance is equal to the specified object; otherwise, false.

Beispiele

Im folgenden Beispiel wird die Tuple<T1,T2>.Equals(Object) Methode, um zu bestimmen, ob eines der Objekte in ein Array von Tuple<T1,T2> Objekte miteinander gleich sind.The following example calls the Tuple<T1,T2>.Equals(Object) method to determine whether any of the objects in an array of Tuple<T1,T2> objects are equal to one another. Die Ausgabe spiegelt die Tatsache wider, die die Equals(Object) Methodenrückgabe true beim Vergleich von Tuple<T1,T2> Objekte, deren Komponenten die gleiche Werte aufweisen.The output reflects the fact that the Equals(Object) method returns true when comparing Tuple<T1,T2> objects whose components have equal values.

using System;

public class Example
{
   public static void Main()
   {
      Tuple<string, Nullable<int>>[] scores = 
                      { new Tuple<string, Nullable<int>>("Dan", 90),
                        new Tuple<string, Nullable<int>>("Ernie", null),
                        new Tuple<string, Nullable<int>>("Jill", 88),
                        new Tuple<string, Nullable<int>>("Ernie", null), 
                        new Tuple<string, Nullable<int>>("Nancy", 88), 
                        new Tuple<string, Nullable<int>>("Dan", 90) };

      // Compare the Tuple objects
      for (int ctr = 0; ctr < scores.Length; ctr++)
      {
         Tuple<string, Nullable<int>> currentTuple = scores[ctr];
         for (int innerCtr = ctr + 1; innerCtr < scores.Length; innerCtr++)
         {
            Console.WriteLine("{0} = {1}: {2}", 
                              scores[ctr], scores[innerCtr], 
                              scores[ctr].Equals(scores[innerCtr]));
         }
         Console.WriteLine();
      }
   }
}
// The example displays the following output:
//       (Dan, 90) = (Ernie, ): False
//       (Dan, 90) = (Jill, 88): False
//       (Dan, 90) = (Ernie, ): False
//       (Dan, 90) = (Nancy, 88): False
//       (Dan, 90) = (Dan, 90): True
//       
//       (Ernie, ) = (Jill, 88): False
//       (Ernie, ) = (Ernie, ): True
//       (Ernie, ) = (Nancy, 88): False
//       (Ernie, ) = (Dan, 90): False
//       
//       (Jill, 88) = (Ernie, ): False
//       (Jill, 88) = (Nancy, 88): False
//       (Jill, 88) = (Dan, 90): False
//       
//       (Ernie, ) = (Nancy, 88): False
//       (Ernie, ) = (Dan, 90): False
//       
//       (Nancy, 88) = (Dan, 90): False
Module Example
   Public Sub Main()
      Dim scores() As Tuple(Of String, Nullable(Of Integer)) = 
                      { New Tuple(Of String, Nullable(Of Integer))("Dan", 90),
                        New Tuple(Of String, Nullable(Of Integer))("Ernie", Nothing),
                        New Tuple(Of String, Nullable(Of Integer))("Jill", 88),
                        New Tuple(Of String, Nullable(Of Integer))("Ernie", Nothing), 
                        New Tuple(Of String, Nullable(Of Integer))("Nancy", 88), 
                        New Tuple(Of String, Nullable(Of Integer))("Dan", 90) }

      ' Compare the Tuple objects
      For ctr As Integer = 0 To scores.Length - 1
         Dim currentTuple As Tuple(Of String, Nullable(Of Integer)) = scores(ctr)
         For innerCtr As Integer = ctr + 1 To scores.Length - 1
            Console.WriteLine("{0} = {1}: {2}", 
                              scores(ctr), scores(innerCtr), 
                              scores(ctr).Equals(scores(innerCtr)))
         Next
         Console.WriteLine()
      Next
   End Sub
End Module
' The example displays the following output:
'       (Dan, 90) = (Ernie, ): False
'       (Dan, 90) = (Jill, 88): False
'       (Dan, 90) = (Ernie, ): False
'       (Dan, 90) = (Nancy, 88): False
'       (Dan, 90) = (Dan, 90): True
'       
'       (Ernie, ) = (Jill, 88): False
'       (Ernie, ) = (Ernie, ): True
'       (Ernie, ) = (Nancy, 88): False
'       (Ernie, ) = (Dan, 90): False
'       
'       (Jill, 88) = (Ernie, ): False
'       (Jill, 88) = (Nancy, 88): False
'       (Jill, 88) = (Dan, 90): False
'       
'       (Ernie, ) = (Nancy, 88): False
'       (Ernie, ) = (Dan, 90): False
'       
'       (Nancy, 88) = (Dan, 90): False

Hinweise

Die obj Parameter wird als gleich der aktuellen Instanz in den folgenden Situationen:The obj parameter is considered to be equal to the current instance under the following conditions:

  • Es ist ein Tuple<T1,T2> Objekt.It is a Tuple<T1,T2> object.

  • Die beiden Komponenten sind dieselben Typen wie die aktuelle Instanz.Its two components are of the same types as the current instance.

  • Die beiden Komponenten sind gleich, mit denen der aktuellen Instanz.Its two components are equal to those of the current instance. Die Gleichheit wird vom standardmäßigen Objektgleichheitsvergleich für die einzelnen Komponenten festgelegt.Equality is determined by the default object equality comparer for each component.

Gilt für: