System.Tuple 类
方法描述
表示 7 元组,即七元组。
语法定义(C# System.Tuple 类 的用法)
[SerializableAttribute] public class Tuple: IStructuralEquatable, IStructuralComparable, IComparable
构造函数
构造函数名称 | 构造函数描述 |
---|---|
Tuple |
初始化 Tuple |
成员/方法
方法名称 | 方法描述 |
---|---|
Equals | 返回一个值,该值指示当前的 Tuple |
Finalize | 允许对象在“垃圾回收”回收之前尝试释放资源并执行其他清理操作。 (继承自 Object。) |
GetHashCode | 返回当前的 Tuple |
GetType | 获取当前实例的 Type。 (继承自 Object。) |
MemberwiseClone | 创建当前 Object 的浅表副本。 (继承自 Object。) |
ToString | 返回一个字符串,该字符串表示此 Tuple |
提示和注释
元组是一种数据结构,其中的值具有特定数目和序列。 Tuple
可以通过调用 Tuple
元组通常有四种不同的使用方式:
表示一组数据。 例如,元组可以表示一条数据库记录,并且其组件可以表示记录的各个字段。
提供对数据集的轻松访问和操作。 下面的示例定义一个 Tuple
C#
VB
复制
using System;
public class Example
{
public static void Main()
{
// Get population data for New York City, 1950-2000.
var population = Tuple.Create("New York", 7891957, 7781984,
7894862, 7071639, 7322564, 8008278);
var rate = ComputePopulationChange(population);
// Display results.
Console.WriteLine("Population Change, {0}, 1950-2000\n", population.Item1);
Console.WriteLine("Year {0,10} {1,9}", "Population", "Annual Rate");
Console.WriteLine("1950 {0,10:N0} {1,11}", population.Item2, "NA");
Console.WriteLine("1960 {0,10:N0} {1,11:P2}", population.Item3, rate.Item2/10);
Console.WriteLine("1970 {0,10:N0} {1,11:P2}", population.Item4, rate.Item3/10);
Console.WriteLine("1980 {0,10:N0} {1,11:P2}", population.Item5, rate.Item4/10);
Console.WriteLine("1990 {0,10:N0} {1,11:P2}", population.Item6, rate.Item5/10);
Console.WriteLine("2000 {0,10:N0} {1,11:P2}", population.Item7, rate.Item6/10);
Console.WriteLine("1950-2000 {0,10:N0} {1,11:P2}", "", rate.Item7/50);
}
private static Tuple
ComputePopulationChange(
Tuple
{
var rate = Tuple.Create(data.Item1,
(double)(data.Item3 - data.Item2)/data.Item2,
(double)(data.Item4 - data.Item3)/data.Item3,
(double)(data.Item5 - data.Item4)/data.Item4,
(double)(data.Item6 - data.Item5)/data.Item5,
(double)(data.Item7 - data.Item6)/data.Item6,
(double)(data.Item7 - data.Item2)/data.Item2 );
return rate;
}
}
// The example displays the following output:
// Population Change, New York, 1950-2000
//
// Year Population Annual Rate
// 1950 7,891,957 NA
// 1960 7,781,984 -0.14 %
// 1970 7,894,862 0.15 %
// 1980 7,071,639 -1.04 %
// 1990 7,322,564 0.35 %
// 2000 8,008,278 0.94 %
// 1950-2000 0.03 %
在不使用 out 参数(在 C# 中)或 ByRef 参数(在 Visual Basic)的情况下,从方法中返回多个值。 例如,前一个示例在 Tuple
通过单个参数将多个值传递给一个方法。 例如,Thread.Start(Object) 方法有一个单一参数,可以使用该参数向在启动时线程执行的方法提供一个值。 如果将 Tuple
System.Tuple 类例子
线程安全
此类型的任何公共 static(在 Visual Basic 中为 Shared) 成员都是线程安全的。但不保证所有实例成员都是线程安全的。
版本信息
.NET Framework 受以下版本支持:4 .NET Framework Client Profile 受以下版本支持:4 受以下版本支持:
适用平台
Windows 7, Windows Vista SP1 或更高版本, Windows XP SP3, Windows Server 2008(不支持服务器核心), Windows Server 2008 R2(支持 SP1 或更高版本的服务器核心), Windows Server 2003 SP2 .NET Framework 并不是对每个平台的所有版本都提供支持。有关支持的版本的列表,请参见.NET Framework 系统要求。