在C#中,8-ValueTuple是包含八个元素的值类型元组,也称为octuple 。您可以使用两种不同的方法来创建8-ValueTuple:
- 使用ValueTuple
- 使用Create
使用ValueTuple
您可以使用ValueTuple
句法:
public ValueTuple (T1 item1, T2 item2, T3 item3, T4 item4, T5 item5, T6 item6, T7 item7, TRest rest);
参数:
- item1:它是第一个值元组组件的值。
- item2:它是第二个值元组组件的值。
- item3:它是第三个值元组组件的值。
- item4:它是第四个值元组组件的值。
- item5:它是第五个值元组组件的值。
- item6:它是第六个值元组组件的值。
- item7:它是第七个值元组组件的值。
- rest:它是任何值元组类型的实例,其中包含值的元组剩余元素的值。
异常:如果其余的不是通用值元组类型,则将提供ArgumentException。
例子:
// C# program to create a 8-ValueTuple
// using ValueTuple constructor
using System;
class GFG {
// Main method
static public void Main()
{
// Creating a value tuple with eight elements
// Using ValueTuple(T1, T2, T3, T4, T5, T6, T7,
// TRest rest) constructor
ValueTuple> MyTpl = new ValueTuple>("Rohan", "Sumit", "Soniya",
"Shivam", "Raksha", "Purvi", "Mohan",
new ValueTuple("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);
}
}
输出:
Student 1: Rohan
Student 2: Sumit
Student 3: Soniya
Student 4: Shivam
Student 5: Raksha
Student 6: Purvi
Student 7: Mohan
Student 8: (Nayan)
使用Create
您还可以借助Create
句法:
public static ValueTuple > 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);
类型参数:
- T1:这是值元组的第一个组件的类型。
- T2:这是值元组的第二个组件的类型。
- T3:这是值元组的第三部分的类型。
- T4:这是值元组的第四部分的类型。
- T5:这是值元组的第五个组件的类型。
- T6:这是值元组的第六个组成部分的类型。
- T7:这是值元组的第七个组成部分的类型。
- T8:这是值元组的第八个组成部分的类型。
参数:
- item1:它是值元组的第一个组件的值。
- item2:它是值元组的第二个组件的值。
- item3:它是值元组的第三部分的值。
- item4:它是值元组的第四个组成部分的值。
- item5:它是值元组的第五个组成部分的值。
- item6:它是值元组的第六个组成部分的值。
- item7:它是值元组的第七个组成部分的值。
- item8:它是值元组的第八个组成部分的值。
返回值:该方法返回带有八个元素的值元组。
例子:
// C# program to create a 8-ValueTuple
// using Create Method
using System;
class GFG {
// Main method
static public void Main()
{
// Creating a value tuple with the
// eight elements using Create method
var MyTple = ValueTuple.Create(45.67, 67.78, 56.8, 567.5,
23.4, 56.7, 12.34, 35.56);
// Display the components of the value tuple
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);
}
}
输出:
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
参考:
- https://docs.microsoft.com/zh-cn/dotnet/api/system.valuetuple-8.-ctor?view=netframework-4.8
- https://docs.microsoft.com/zh-cn/dotnet/api/system.valuetuple.create?view=netframework-4.8#System_ValueTuple_Create__8___0___1___2___3___4___5___6___7_
您可以使用ValueTuple 句法: public ValueTuple (T1 item1, T2 item2, T3 item3, T4 item4, T5 item5, T6 item6, T7 item7, TRest rest); 参数: 异常:如果其余的不是通用值元组类型,则将提供ArgumentException。 例子: 您还可以借助Create 句法: public static ValueTuple 类型参数: 参数: 返回值:该方法返回带有八个元素的值元组。 例子: 参考:
// C# program to create a 8-ValueTuple
// using ValueTuple constructor
using System;
class GFG {
// Main method
static public void Main()
{
// Creating a value tuple with eight elements
// Using ValueTuple
Student 1: Rohan
Student 2: Sumit
Student 3: Soniya
Student 4: Shivam
Student 5: Raksha
Student 6: Purvi
Student 7: Mohan
Student 8: (Nayan)
使用Create
// C# program to create a 8-ValueTuple
// using Create Method
using System;
class GFG {
// Main method
static public void Main()
{
// Creating a value tuple with the
// eight elements using Create method
var MyTple = ValueTuple.Create(45.67, 67.78, 56.8, 567.5,
23.4, 56.7, 12.34, 35.56);
// Display the components of the value tuple
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);
}
}
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