Comparing two ValueTuple<T1, T2> in C#
Last Updated :
29 Dec, 2019
ValueTuple is a structure introduced in C# 7.0 which represents the value type Tuple. It is already included in .NET Framework 4.7 or higher version. It allows you to store a data set that contains multiple values that may or may not be related to each other.
You can also compare the instance of two value tuples with each other by using CompareTo(ValueTuple<T1, T2>) method. Or in other words, with the help of CompareTo method you are allowed to compare the current ValueTuple<T1, T2> instance to a specified ValueTuple<T1, T2> instance. This method also compares nested value tuples with each other.
Syntax:
public int CompareTo (ValueTuple<T1, T2> other);
Return Type: The return type of this method is System.Int32. And it always returns a signed integer that indicates the relative position of this instance and other in the sort order as shown in the below list:
- Negative integer for the instance precedes another.
- Zero for the instance and others have the same position in the sort order.
- Positive integer for the instance follows another.
Example 1:
using System;
namespace exampleofvaluetuple {
class GFG {
static void Main( string [] args)
{
var t1 = (43, 34);
var t2 = (78, 98);
Console.WriteLine( "Result 1: {0}" , t1.CompareTo(t2));
var p1 = (86, 99);
var p2 = (44, 22);
Console.WriteLine( "Result 2: {0}" , p1.CompareTo(p2));
var q1 = (10, 20);
var q2 = (10, 20);
Console.WriteLine( "Result 3: {0}" , q1.CompareTo(q2));
}
}
}
|
Output:
Result 1: -1
Result 2: 1
Result 3: 0
Example 2:
using System;
namespace exampleofvaluetuple {
class GFG {
static void Main( string [] args)
{
var t1 = (44, 34);
var t2 = (44, 45);
if (t1.CompareTo(t2) == 0) {
Console.WriteLine( "Value tuples are equal!!" );
}
else {
Console.WriteLine( "Value tuples are not equal!!" );
}
}
}
}
|
Output:
Value tuples are not equal!!
Share your thoughts in the comments
Please Login to comment...