Tuple<T1,T2,T3,T4,T5,T6,T7,TRest>.Equals(Object) メソッド

定義

現在の Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> オブジェクトが、指定されたオブジェクトと等しいかどうかを示す値を返します。Returns a value that indicates whether the current Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> 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

パラメーター

obj
Object

このインスタンスと比較するオブジェクト。The object to compare with this instance.

戻り値

現在のインスタンスが指定したオブジェクトと等しい場合は true。それ以外の場合は falsetrue if the current instance is equal to the specified object; otherwise, false.

次の例ではTuple<T1,T2,T3,T4,T5,T6,T7,TRest> 、素数を含む5つのオブジェクトを定義します。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. 出力に示されているように、同じ値Tuple<T1,T2,T3,T4,T5,T6,T7,TRest>を持つコンポーネントの数が同じであるため、最初と最後のオブジェクトだけが等しくなります。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
Module Example
   Public Sub Main()
      ' Create five 8-tuple objects containing prime numbers.
      Dim prime1 = New Tuple(Of Int32, Int32, Int32, Int32, Int32, Int32, Int32, 
                           Tuple(Of Int32)) (2, 3, 5, 7, 11, 13, 17, 
                           New Tuple(Of Int32)(19))
      Dim prime2 = New Tuple(Of Int32, Int32, Int32, Int32, Int32, Int32, Int32, 
                           Tuple(Of Int32)) (23, 29, 31, 37, 41, 43, 47, 
                           New Tuple(Of Int32)(55)) 
      Dim prime3 = New Tuple(Of Int32, Int32, Int32, Int32, Int32, Int32, Int32, 
                           Tuple(Of Int32)) (3, 2, 5, 7, 11, 13, 17, 
                           New Tuple(Of Int32)(19)) 
      Dim prime4 = New Tuple(Of Int32, Int32, Int32, Int32, Int32, Int32, Int32, 
                           Tuple(Of Int32, Int32)) (2, 3, 5, 7, 11, 13, 17, 
                           New Tuple(Of Int32, Int32)(19, 23))
      Dim prime5 = New Tuple(Of Int32, Int32, Int32, Int32, Int32, Int32, Int32, 
                           Tuple(Of Int32)) (2, 3, 5, 7, 11, 13, 17, 
                           New Tuple(Of 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))
   End Sub
End Module
' 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

注釈

次のすべての条件を満たしている場合、パラメーターは現在のインスタンスと等しいと見なされます。objThe obj parameter is considered to be equal to the current instance if it meets all the following conditions:

  • これはTuple<T1,T2,T3,T4,T5,T6,T7,TRest>オブジェクトです。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.

適用対象