元组对象的使用
Tuple 类
文章来自:https://msdn.microsoft.com/zh-cn/library/system.tuple.aspx
提供用于创造元组对象的静态方法。
若要浏览此类型的.NET Framework 源代码,请参阅Reference Source。
程序集: mscorlib(位于 mscorlib.dll)
System.Tuple
名称 | 说明 | |
---|---|---|
![]() ![]() |
Create<T1>(T1) |
创建新的 1 元组,即单一实例。 |
![]() ![]() |
Create<T1, T2>(T1, T2) |
创建新的 2 元组,即二元组。 |
![]() ![]() |
Create<T1, T2, T3>(T1, T2, T3) |
创建新的 3 元组,即三元组。 |
![]() ![]() |
Create<T1, T2, T3, T4>(T1, T2, T3, T4) |
创建新的 4 元组,即四元组。 |
![]() ![]() |
Create<T1, T2, T3, T4, T5>(T1, T2, T3, T4, T5) |
创建新的 5 元组,即五元组。 |
![]() ![]() |
Create<T1, T2, T3, T4, T5, T6>(T1, T2, T3, T4, T5, T6) |
创建新的 6 元组,即六元组。 |
![]() ![]() |
Create<T1, T2, T3, T4, T5, T6, T7>(T1, T2, T3, T4, T5, T6, T7) |
创建新的 7 元组,即七元组。 |
![]() ![]() |
Create<T1, T2, T3, T4, T5, T6, T7, T8>(T1, T2, T3, T4, T5, T6, T7, T8) |
创建新的 8 元组,即八元组。 |
元组是一种数据结构,具有特定数量和元素序列。 元组的一个示例是用于存储人员的姓名等标识符的第一个元素,第二个元素和人员收入中该年度第三个元素中的每一年中的数据结构具有三个元素 (称为 3 元组或三元组)。 .NET Framework 直接支持具有 1 到 7 元素的元组。 此外,您可以创建由嵌套中的元组对象的元组的八个或多个元素Rest属性Tuple<T1, T2, T3, T4, T5, T6, T7, TRest>对象。
元组常用四种方法︰
-
来表示一组数据。 例如,一个元组可以表示的数据库记录,并且其组件可以表示每个字段的记录。
-
若要提供轻松访问和数据集的操作。
-
若要从方法返回多个值,而无需使用out参数 (在 C# 中) 或ByRef参数 (在 Visual Basic 中)。
-
若要将多个值传递给通过单个参数的方法。 例如,Thread.Start(Object)方法只有一个参数,允许你提供一个线程在启动时执行的方法的值。如果你提供Tuple<T1, T2, T3>对象作为方法自变量,则可以提供有三个项的数据的线程的启动例程。
Tuple类不本身表示元组。 相反,它是提供用于创造元组类型支持.NET Framework 的实例的静态方法的类。 它提供了你可以调用实例化元组对象,而无需显式指定的每个元组组件类型的帮助器方法。
虽然你可以通过调用其类构造函数创建元组类的实例,若要这样做的代码会比较麻烦。 下面的示例使用类构造函数来创建 7 元组,或七元组,其中包含从 1950 年到 2000 年每次人口普查的纽约填充数据。
// Create a 7-tuple. var population = new Tuple<string, int, int, int, int, int, int>( "New York", 7891957, 7781984, 7894862, 7071639, 7322564, 8008278); // Display the first and last elements. Console.WriteLine("Population of {0} in 2000: {1:N0}", population.Item1, population.Item7); // The example displays the following output: // Population of New York in 2000: 8,008,278
通过使用一个帮助器方法创建相同的元组对象是更为简单,如以下示例所示。
// Create a 7-tuple. var population = Tuple.Create("New York", 7891957, 7781984, 7894862, 7071639, 7322564, 8008278); // Display the first and last elements. Console.WriteLine("Population of {0} in 2000: {1:N0}", population.Item1, population.Item7); // The example displays the following output: // Population of New York in 2000: 8,008,278
Create帮助器方法直接支持创建有一至八个组件 (即,到八元组的单一实例) 的元组对象。 尽管没有组件的数量没有实际限制但元组可能具有,帮助程序方法不是可用于创建具有九个或多个组件的元组。 若要创建此类元组,必须调用Tuple<T1, T2, T3, T4, T5, T6, T7, TRest>.Tuple<T1, T2, T3, T4, T5, T6, T7, TRest>构造函数。
下面的示例创建一个 8 元组 (八元组) 包含小于 20 的质数。
var primes = Tuple.Create(2, 3, 5, 7, 11, 13, 17, 19); Console.WriteLine("Prime numbers less than 20: " + "{0}, {1}, {2}, {3}, {4}, {5}, {6}, and {7}", primes.Item1, primes.Item2, primes.Item3, primes.Item4, primes.Item5, primes.Item6, primes.Item7, primes.Rest.Item1); // The example displays the following output: // Prime numbers less than 20: 2, 3, 5, 7, 11, 13, 17, and 19
自 8 起可用
.NET Framework
自 4.0 起可用
可移植类库
在 可移植 .NET 平台 中受支持
Silverlight
自 4.0 起可用
Windows Phone Silverlight
自 8.0 起可用
Windows Phone
自 8.1 起可用
此类型的所有公共静态(Visual Basic 中的 已共享 在 Visual Basic 中)成员都是线程安全的。不保证所有实例成员都是线程安全的。