使用英语阅读

通过


Tuple 类

定义

提供用于创造元组对象的静态方法。

C#
public static class Tuple
继承
Tuple

示例

以下示例创建一个包含小于 20 的质数的 8 元组 (八进制) 。

C#
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

注解

元组是具有特定数量和元素序列的数据结构。 元组的一个示例是包含三个元素的数据结构, (称为三元组或三元组) ,用于存储标识符,例如第一个元素中的人员姓名、第二个元素中的一年,以及第三个元素中该年份的人员的收入。 .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 元组或 9 元组,其中包含纽约市从 1950 年到 2000 年每次人口普查的人口数据。

C#
// 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

使用帮助程序方法创建同一元组对象更为简单,如以下示例所示。

C#
// 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 程序方法直接支持创建具有 1 到 8 个组件 (即通过八进制) 的单一实例的元组对象。 尽管元组可能具有的组件数没有实际限制,但帮助程序方法无法创建包含九个或更多组件的元组。 若要创建此类元组,必须调用 Tuple<T1,T2,T3,T4,T5,T6,T7,TRest>.Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> 构造函数。

备注

有关使用元组的其他信息和示例,请参阅.NET Framework中各个元组类型的文档。 本主题末尾的“另请参阅”部分列出了这些内容。

方法

Create<T1,T2,T3,T4,T5,T6,T7,T8>(T1, T2, T3, T4, T5, T6, T7, T8)

创建新的 8 元组,即八元组。

Create<T1,T2,T3,T4,T5,T6,T7>(T1, T2, T3, T4, T5, T6, T7)

创建新的 7 元组,即七元组。

Create<T1,T2,T3,T4,T5,T6>(T1, T2, T3, T4, T5, T6)

创建新的 6 元组,即六元组。

Create<T1,T2,T3,T4,T5>(T1, T2, T3, T4, T5)

创建新的 5 元组,即五元组。

Create<T1,T2,T3,T4>(T1, T2, T3, T4)

创建新的 4 元组,即四元组。

Create<T1,T2,T3>(T1, T2, T3)

创建新的 3 元组,即三元组。

Create<T1,T2>(T1, T2)

创建新的 2 元组,即二元组。

Create<T1>(T1)

创建新的 1 元组,即单一实例。

适用于

产品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

另请参阅