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

Definicja

Zwraca wartość wskazującą, czy bieżący Tuple<T1,T2> obiekt jest równy podanemu obiektowi.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

Parametry

obj
Object

Obiekt, który ma zostać porównany z tym wystąpieniem.The object to compare with this instance.

Zwraca

Boolean

true Jeśli bieżące wystąpienie jest równe podanemu obiektowi; w przeciwnym razie false .true if the current instance is equal to the specified object; otherwise, false.

Przykłady

Poniższy przykład wywołuje metodę, Tuple<T1,T2>.Equals(Object) Aby określić, czy którykolwiek z obiektów w tablicy Tuple<T1,T2> obiektów jest równy siebie.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. Dane wyjściowe odzwierciedlają fakt, że Equals(Object) Metoda zwraca w true przypadku porównywania Tuple<T1,T2> obiektów, których składniki mają równe wartości.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++)
      {
         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
         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

Uwagi

objParametr jest traktowany jako równy bieżącemu wystąpieniu w następujących warunkach:The obj parameter is considered to be equal to the current instance under the following conditions:

  • Jest to Tuple<T1,T2> obiekt.It is a Tuple<T1,T2> object.

  • Jego dwa składniki są tego samego typu co bieżące wystąpienie.Its two components are of the same types as the current instance.

  • Jego dwa składniki są równe bieżącym wystąpieniu.Its two components are equal to those of the current instance. Równość jest określana przez domyślny moduł porównywania równości obiektów dla każdego składnika.Equality is determined by the default object equality comparer for each component.

Dotyczy