C# 4.0 language includes a new feature called Tuple. Tuple provides us a way of grouping elements of different data type. That enables us to use it a lots places at practical world like we can store a coordinates of graphs etc. In C# 4.0 we can create Tuple with Create method. This Create method offer 8 overload like following. So you can group maximum 8 data types with a Tuple. Followings are overloads of a data type. Create(T1)- Which represents a tuple of size 1 Create(T1,T2)- Which represents a tuple of size 2 Create(T1,T2,T3) – Which represents a tuple of size 3 Create(T1,T2,T3,T4) – Which represents a tuple of size 4 Create(T1,T2,T3,T4,T5) – Which represents a tuple of size 5 Create(T1,T2,T3,T4,T5,T6) – Which represents a tuple of size 6 Create(T1,T2,T3,T4,T5,T6,T7) – Which represents a tuple of size 7 Create(T1,T2,T3,T4,T5,T6,T7,T8) – Which represents a tuple of size 8 Following are some example code for tuple. using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace TupleExample
{
class Program
{
static void Main(string[] args)
{
var tuple = System.Tuple.Create<string, string, string>("Jalpesh", "P", "Vadgama");
Console.WriteLine(tuple);
var t = System.Tuple.Create<int, string>(1, "Jalpesh");
Console.WriteLine(t);
}
}
}
Following is a output of above as expected.
You can also access values insides Tuple with ItemN property. Where N represents particular number of item in tuple. Following is an example of it.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace TupleExample
{
class Program
{
static void Main(string[] args)
{
var tuple = System.Tuple.Create<string, string, string>("Jalpesh", "P", "Vadgama");
Console.WriteLine(tuple.Item1);
Console.WriteLine(tuple.Item2);
Console.WriteLine(tuple.Item3);
}
}
}
Here you can see I have printed items with Item1,Item2 and Item3 . Following is the output of above code.
Even we can create a nested tuple also following is code for nested tuple.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace TupleExample
{
class Program
{
static void Main(string[] args)
{
var tuple = System.Tuple.Create(1,"Jalpesh",new Tuple<string,string>("P","Vadgama"));
Console.WriteLine(tuple.Item1);
Console.WriteLine(tuple.Item2);
Console.WriteLine(tuple.Item3);
}
}
}
Following is a output above code as expected.
As you can see there are unlimited possibilities we can do lots of things with Tuple. Hope you liked it. Stay tuned for more. Till then Happy Programming!!