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.
Important Points: This obj parameter is considered to be equal when it meets the following conditions:
- If 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:
CSharp
// 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)); } } |
Output:
False True False
Example 2:
CSharp
// 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)); } } |
Output:
False False True False False
Contact Us