How to create 8-ValueTuple in C#?
In C#, an 8-ValueTuple is a value type tuple which contains eight elements and it is also known as octuple. You can create an 8-ValueTuple using two different ways:
- Using ValueTuple<T1, T2, T3, T4, T5, T6, T7, TRest<(T1, T2, T3, T4, T5, T6, T7, TRest) Constructor
- Using Create<T1, T2, T3, T4, T5, T6, T7, T8<(T1, T2, T3, T4, T5, T6, T7, T8) Method
Using ValueTuple<T1, T2, T3, T4, T5, T6, T7, TRest<(T1, T2, T3, T4, T5, T6, T7, TRest) Constructor
You can create an 8-ValueTuple by using ValueTuple<T1, T2, T3, T4, T5, T6, T7, TRest<(T1, T2, T3, T4, T5, T6, T7, TRest) constructor. It initializes a new instance of the ValueTuple<T1, T2, T3, T4, T5, T6, T7, TRest< struct. But when you create a value tuple using this constructor, then you have to specify the type of the element stored in the value tuple. Using this constructor, you can also create a value tuple which contains nine or more than nine elements by using the rest parameter. With the help of the rest parameter, you can create n-nested value tuples.
Syntax:
public ValueTuple (T1 item1, T2 item2, T3 item3, T4 item4, T5 item5, T6 item6, T7 item7, TRest rest);
Parameters:
- item1: It is the value of the first value tuple component.
- item2: It is the value of the second value tuple component.
- item3: It is the value of the third value tuple component.
- item4: It is the value of the fourth value tuple component.
- item5: It is the value of the fifth value tuple component.
- item6: It is the value of the sixth value tuple component.
- item7: It is the value of the seventh value tuple component.
- rest: It is the instance of any value tuple type that contains the values of the value’s tuple’s remaining elements.
Exception: This will give ArgumentException if the rest is not a generic value tuple type.
Example:
using System;
class GFG {
static public void Main()
{
ValueTuple< string , string , string , string , string , string ,
string , ValueTuple< string >> MyTpl = new ValueTuple< string ,
string , string , string , string , string , string ,
ValueTuple< string >>( "Rohan" , "Sumit" , "Soniya" ,
"Shivam" , "Raksha" , "Purvi" , "Mohan" ,
new ValueTuple< string >( "Nayan" ));
Console.WriteLine( "Student 1: " + MyTpl.Item1);
Console.WriteLine( "Student 2: " + MyTpl.Item2);
Console.WriteLine( "Student 3: " + MyTpl.Item3);
Console.WriteLine( "Student 4: " + MyTpl.Item4);
Console.WriteLine( "Student 5: " + MyTpl.Item5);
Console.WriteLine( "Student 6: " + MyTpl.Item6);
Console.WriteLine( "Student 7: " + MyTpl.Item7);
Console.WriteLine( "Student 8: " + MyTpl.Rest);
}
}
|
Output:
Student 1: Rohan
Student 2: Sumit
Student 3: Soniya
Student 4: Shivam
Student 5: Raksha
Student 6: Purvi
Student 7: Mohan
Student 8: (Nayan)
Using Create<T1, T2, T3, T4, T5, T6, T7, T8<(T1, T2, T3, T4, T5, T6, T7, T8) Method
You can also create an 8-ValueTuple or a value tuple which holds 8-elements with the help of Create<T1, T2, T3, T4, T5, T6, T7, T8<(T1, T2, T3, T4, T5, T6, T7, T8) method. When you use this method, then there is no need to specify the type of elements stored in the value tuple.
Syntax:
public static ValueTuple <T1, T2, T3, T4, T5, T6, T7, ValueTuple<T8>> Create< T1, T2, T3, T4, T5, T6, T7, T8> (T1 item1, T2 item2, T3 item3, T4 item4, T5 item5, T6 item6, T7 item7, T8 item8);
Type Parameters:
- T1: It is the type of the value tuple’s first component.
- T2: It is the type of the value tuple’s second component.
- T3: It is the type of the value tuple’s third component.
- T4: It is the type of the value tuple’s fourth component.
- T5: It is the type of the value tuple’s fifth component.
- T6: It is the type of the value tuple’s sixth component.
- T7: It is the type of the value tuple’s seventh component.
- T8: It is the type of the value tuple’s eighth component.
Parameters:
- item1: It is the value of the value tuple’s first component.
- item2: It is the value of the value tuple’s second component.
- item3: It is the value of the value tuple’s third component.
- item4: It is the value of the value tuple’s fourth component.
- item5: It is the value of the value tuple’s fifth component.
- item6: It is the value of the value tuple’s sixth component.
- item7: It is the value of the value tuple’s seventh component.
- item8: It is the value of the value tuple’s eighth component.
Returns: This method returns a value tuple with eight elements.
Example:
using System;
class GFG {
static public void Main()
{
var MyTple = ValueTuple.Create(45.67, 67.78, 56.8, 567.5,
23.4, 56.7, 12.34, 35.56);
Console.WriteLine( "Component 1: " + MyTple.Item1);
Console.WriteLine( "Component 2: " + MyTple.Item2);
Console.WriteLine( "Component 3: " + MyTple.Item3);
Console.WriteLine( "Component 4: " + MyTple.Item4);
Console.WriteLine( "Component 5: " + MyTple.Item5);
Console.WriteLine( "Component 6: " + MyTple.Item6);
Console.WriteLine( "Component 7: " + MyTple.Item7);
Console.WriteLine( "Component 8: " + MyTple.Item7);
}
}
|
Output:
Component 1: 45.67
Component 2: 67.78
Component 3: 56.8
Component 4: 567.5
Component 5: 23.4
Component 6: 56.7
Component 7: 12.34
Component 8: 12.34
Reference:
Last Updated :
23 Jul, 2019
Like Article
Save Article
Share your thoughts in the comments
Please Login to comment...