ValueTuple<T1> 结构

定义

表示具有单个组件的值元组。

generic <typename T1>
public value class ValueTuple : IComparable, IComparable<ValueTuple<T1>>, IEquatable<ValueTuple<T1>>, System::Collections::IStructuralComparable, System::Collections::IStructuralEquatable, System::Runtime::CompilerServices::ITuple
generic <typename T1>
public value class ValueTuple : IComparable, IComparable<ValueTuple<T1>>, IEquatable<ValueTuple<T1>>, System::Collections::IStructuralComparable, System::Collections::IStructuralEquatable
public struct ValueTuple<T1> : IComparable, IComparable<(T1)>, IEquatable<(T1)>, System.Collections.IStructuralComparable, System.Collections.IStructuralEquatable, System.Runtime.CompilerServices.ITuple
public struct ValueTuple<T1> : IComparable, IComparable<(T1)>, IEquatable<(T1)>, System.Collections.IStructuralComparable, System.Collections.IStructuralEquatable
[System.Serializable]
public struct ValueTuple<T1> : IComparable, IComparable<(T1)>, IEquatable<(T1)>, System.Collections.IStructuralComparable, System.Collections.IStructuralEquatable
type ValueTuple<'T1> = struct
    interface ITuple
type ValueTuple<'T1> = struct
[<System.Serializable>]
type ValueTuple<'T1> = struct
    interface ITuple
Public Structure ValueTuple(Of T1)
Implements IComparable, IComparable(Of ValueTuple(Of T1)), IEquatable(Of ValueTuple(Of T1)), IStructuralComparable, IStructuralEquatable, ITuple
Public Structure ValueTuple(Of T1)
Implements IComparable, IComparable(Of ValueTuple(Of T1)), IEquatable(Of ValueTuple(Of T1)), IStructuralComparable, IStructuralEquatable

类型参数

T1

此值元组类型的唯一元素。

继承
ValueTuple<T1>
属性
实现

注解

值元组是具有特定数量和值序列的数据结构。 结构 ValueTuple<T1> 表示具有一个元素的值元组。

值元组类型不同于 (元组类型,如下所示 Tuple<T1>

  • 它们是) 值类型 (结构,而不是) 引用类型 (类。

  • Item1 成员是字段,而不是属性。

  • 其字段是可变的,而不是只读的。

值元组类型提供支持 C# 中的元组 和 F# 中的结构元组的运行时实现。 除了使用语言语法创建 ValueTuple<T1> 实例外,还可以调用 ValueTuple.Create<T1>(T1) 工厂方法。

序列化和值元组

类型ValueTuple<T1>在 .NET Core 1.x 或 .NET Framework 4.7 及更早版本中不可序列化。 此外,.NET Standard(包括 .NET Standard 2.0)不强制对实例进行 ValueTuple<T1> 序列化;实例是否 ValueTuple<T1> 可序列化取决于单个 .NET Standard 实现。 若要确定类型 ValueTuple<T1> 在特定 .NET 实现上是否可序列化,请获取表示 TypeValueTuple<T1> 类型的 对象并检索其 IsSerializable 属性的值。 有关 .NET Core 中可序列化的类型列表和.NET Framework,请参阅二进制序列化

构造函数

ValueTuple<T1>(T1)

初始化一个新 ValueTuple<T1> 实例。

字段

Item1

获取当前 ValueTuple<T1> 实例的第 1 个元素的值。

方法

CompareTo(ValueTuple<T1>)

将当前 ValueTuple<T1> 实例与指定的 ValueTuple<T1> 实例进行比较。

Equals(Object)

返回一个值,该值指示当前 ValueTuple<T1> 实例是否与指定的对象相等。

Equals(ValueTuple<T1>)

返回一个值,该值指示当前 ValueTuple<T1> 实例是否与指定的 ValueTuple<T1> 实例相等。

GetHashCode()

计算当前 ValueTuple<T1> 实例的哈希代码。

ToString()

返回表示此 ValueTuple<T1> 实例的值的字符串。

显式接口实现

IComparable.CompareTo(Object)

使用指定的比较器比较当前 ValueTuple<T1> 实例与指定对象,并返回一个整数,该整数指示当前对象在排序顺序中的位置:是在指定对象之前、之后还是在与指定对象相同的位置。

IStructuralComparable.CompareTo(Object, IComparer)

使用指定的比较器比较当前 ValueTuple<T1> 实例与指定对象,并返回一个整数,该整数指示当前对象在排序顺序中的位置:是在指定对象之前、之后还是在与指定对象相同的位置。

IStructuralEquatable.Equals(Object, IEqualityComparer)

返回一个值,该值指示基于指定的比较方法,当前 ValueTuple<T1> 实例是否与指定的对象相等。

IStructuralEquatable.GetHashCode(IEqualityComparer)

通过使用指定计算方法计算当前 ValueTuple<T1> 实例的哈希代码。

ITuple.Item[Int32]

获取 ValueTuple 元素的值。

ITuple.Length

获取 ValueTuple 中的元素数。

扩展方法

ToTuple<T1>(ValueTuple<T1>)

将 结构的实例 ValueTuple 转换为 类的 Tuple 实例。

适用于