C# | Check if two Tuple Objects are equal

A tuple is a data structure which gives you the easiest way to represent a data set. You can also check if the given tuple object is equal to the specified object or not using the Equals Method. This method will return true if the given tuple object is equal to the specified object, otherwise, return false.

Syntax:

public override bool Equals (object obj);

Here, obj is the object to compare with this instance.



Return Type: The return type of this method is Boolean. Means it will return true if the tuple object is equal to the given object. Otherwise, return false.

Importatnt Points: This obj parameter is considered to be equal when it meets the following conditions:

  • If it it is a Tuple<> object. Here Tuple<> is may be of 1-tuple, or 2-tuple, or 3-tuple, or 4-tuple, or 5-tuple, or 6-tuple, or 7-tuple, or 8-tuple.
  • It must contain the same number of elements that are of the same types as the current instance.
  • Its elements (including its nested components) are equal to those of the current instance. The equality is determined by the default equality comparer for each element.

Below programs illustrate the use of the above-discussed method:

Example 1:

filter_none

edit
close

play_arrow

link
brightness_4
code

// C# program to illustrate the 
// Equals method
using System;
  
class GFG {
  
    // Main Method
    static public void Main()
    {
  
        // Taking tuple variables
        var t1 = Tuple.Create(12, 34, 56, 78);
        var t2 = Tuple.Create(12, 34, 67, 89);
        var t3 = Tuple.Create(12, 34, 56, 78);
        var t4 = Tuple.Create(34, 56, 78);
  
        // Check whether the given 
        // tuples are Equal or not
        // Using Equals() method
        Console.WriteLine(t1.Equals(t2));
        Console.WriteLine(t1.Equals(t3));
        Console.WriteLine(t1.Equals(t4));
    }
}

chevron_right


Output:

False
True
False

Example 2:

filter_none

edit
close

play_arrow

link
brightness_4
code

// C# program to illustrate Equals
// method with nested tuple
using System;
  
class GFG {
  
    // Main Method
    static public void Main()
    {
  
        // Taking Tuples
        var t1 = Tuple.Create(34, 56, 78, Tuple.Create(12, 34, 56, 78));
        var t2 = Tuple.Create(12, 34, 67, 89);
        var t3 = Tuple.Create(12, 34, 56, Tuple.Create(23, 56));
        var t4 = Tuple.Create(34, 56, 78, Tuple.Create(12, 34, 56, 78));
        var t5 = Tuple.Create(12, 34, 56, Tuple.Create(24, 56));
  
        // Check whether the given 
        // tuples are Equal or not
        // Using Equals() method
        Console.WriteLine(t1.Equals(t2));
        Console.WriteLine(t1.Equals(t3));
        Console.WriteLine(t1.Equals(t4));
        Console.WriteLine(t3.Equals(t5));
        Console.WriteLine(t1.Equals(t5));
    }
}

chevron_right


Output:

False
False
True
False
False


My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.



Improved By : Akanksha_Rai



Article Tags :

Be the First to upvote.


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.