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

 
System_CAPS_noteNote

The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

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

Namespace:   System
Assembly:  mscorlib (in mscorlib.dll)

public override bool Equals(
	object obj
)

Parameters

obj
Type: System.Object

The object to compare with this instance.

Return Value

Type: System.Boolean

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

The obj parameter is considered to be equal to the current instance if it meets all the following conditions:

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

  • It has the same total number of components that are of the same types as the current instance.

  • Its components (including its nested components) are equal to those of the current instance. Equality is determined by the default equality comparer for each component.

The following example defines five Tuple<T1, T2, T3, T4, T5, T6, T7, TRest> objects that contain prime numbers. It then compares the first object with each of the remaining objects. As the output shows, only the first and the last Tuple<T1, T2, T3, T4, T5, T6, T7, TRest> objects are equal, because they have an identical number of components with identical values.

using System;

public class Class1
{
   public static void Main()
   {
      // Create five 8-tuple objects containing prime numbers.
      var prime1 = new Tuple<Int32, Int32, Int32, Int32, Int32, Int32, Int32, 
                           Tuple<Int32>> (2, 3, 5, 7, 11, 13, 17, 
                           new Tuple<Int32>(19));
      var prime2 = new Tuple<Int32, Int32, Int32, Int32, Int32, Int32, Int32, 
                           Tuple<Int32>> (23, 29, 31, 37, 41, 43, 47, 
                           new Tuple<Int32>(55));
      var prime3 = new Tuple<Int32, Int32, Int32, Int32, Int32, Int32, Int32, 
                           Tuple<Int32>> (3, 2, 5, 7, 11, 13, 17, 
                           new Tuple<Int32>(19)); 
      var prime4 = new Tuple<Int32, Int32, Int32, Int32, Int32, Int32, Int32, 
                           Tuple<Int32, Int32>> (2, 3, 5, 7, 11, 13, 17, 
                           new Tuple<Int32, Int32>(19, 23));
      var prime5 = new Tuple<Int32, Int32, Int32, Int32, Int32, Int32, Int32, 
                           Tuple<Int32>> (2, 3, 5, 7, 11, 13, 17, 
                           new Tuple<Int32>(19));
      Console.WriteLine("{0} = {1} : {2}", prime1, prime2, prime1.Equals(prime2));
      Console.WriteLine("{0} = {1} : {2}", prime1, prime3, prime1.Equals(prime3));
      Console.WriteLine("{0} = {1} : {2}", prime1, prime4, prime1.Equals(prime4));
      Console.WriteLine("{0} = {1} : {2}", prime1, prime5, prime1.Equals(prime5));
   }
}
// The example displays the following output:
//    (2, 3, 5, 7, 11, 13, 17, 19) = (23, 29, 31, 37, 41, 43, 47, 55) : False
//    (2, 3, 5, 7, 11, 13, 17, 19) = (3, 2, 5, 7, 11, 13, 17, 19) : False
//    (2, 3, 5, 7, 11, 13, 17, 19) = (2, 3, 5, 7, 11, 13, 17, 19, 23) : False
//    (2, 3, 5, 7, 11, 13, 17, 19) = (2, 3, 5, 7, 11, 13, 17, 19) : True

Universal Windows Platform
Available since 8
.NET Framework
Available since 4.0
Portable Class Library
Supported in: portable .NET platforms
Silverlight
Available since 4.0
Windows Phone Silverlight
Available since 8.0
Windows Phone
Available since 8.1
Return to top
Show: