ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> 構造体

定義

n 値のタプル (n は 8 以上) を表します。Represents an n-value tuple, where n is 8 or greater.

generic <typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename TRest>
 where TRest : value classpublic value class ValueTuple : IComparable, IComparable<ValueTuple<T1, T2, T3, T4, T5, T6, T7, TRest>>, IEquatable<ValueTuple<T1, T2, T3, T4, T5, T6, T7, TRest>>, System::Collections::IStructuralComparable, System::Collections::IStructuralEquatable, System::Runtime::CompilerServices::ITuple
[System.Serializable]
public struct ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> : IComparable, IComparable<ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest>>, IEquatable<ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest>>, System.Collections.IStructuralComparable, System.Collections.IStructuralEquatable, System.Runtime.CompilerServices.ITuple where TRest : struct
type ValueTuple<'T1, 'T2, 'T3, 'T4, 'T5, 'T6, 'T7, 'Rest (requires 'Rest : struct)> = struct
    interface ITuple
Public Structure ValueTuple(Of T1, T2, T3, T4, T5, T6, T7, TRest)
Implements IComparable, IComparable(Of ValueTuple(Of T1, T2, T3, T4, T5, T6, T7, TRest)), IEquatable(Of ValueTuple(Of T1, T2, T3, T4, T5, T6, T7, TRest)), IStructuralComparable, IStructuralEquatable, ITuple

型パラメーター

T1

値のタプルの 1 番目の要素の型。The type of the value tuple's first element.

T2

値のタプルの 2 番目の要素の型。The type of the value tuple's second element.

T3

値のタプルの 3 番目の要素の型。The type of the value tuple's third element.

T4

値のタプルの 4 番目の要素の型。The type of the value tuple's fourth element.

T5

値のタプルの 5 番目の要素の型。The type of the value tuple's fifth element.

T6

値のタプルの 6 番目の要素の型。The type of the value tuple's sixth element.

T7

値のタプルの 7 番目の要素の型。The type of the value tuple's seventh element.

TRest

タプルの残りの要素の型を定義する一般的な値のタプル インスタンス。Any generic value tuple instance that defines the types of the tuple's remaining elements.

継承
ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest>
属性
実装
IStructuralComparable IStructuralEquatable IComparable IComparable<ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest>> IEquatable<ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest>> ITuple

注釈

値のタプルは、特定の数と値のシーケンスを持つデータ構造です。A value tuple is a data structure that has a specific number and sequence of values. @No__t 0 構造体は、8個以上の要素を持つ値のタプルを表します。The ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> structure represents a value tuple that has eight or more elements.

値のタプル型は、次のようにタプル型 (Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> など) とは異なります。The value tuple types differ from the tuple types (such as Tuple<T1,T2,T3,T4,T5,T6,T7,TRest>) as follows:

  • これらは、クラス (参照型) ではなく構造 (値型) です。They are structures (value types) rather than classes (reference types).

  • @No__t-0 や Item2 などのメンバーは、プロパティではなくフィールドです。Members such as Item1 and Item2 are fields rather than properties.

  • これらのフィールドは、読み取り専用ではなく、変更可能です。Their fields are mutable rather than read-only.

値のタプル型では、の組と構造体のC# 組をサポートF#するランタイム実装が提供されます。The value tuple types provide the runtime implementation that supports tuples in C# and struct tuples in F#. 言語構文を使用して @no__t 0 のインスタンスを作成するだけでなく、@no__t のファクトリメソッドを呼び出すこともできます。In addition to creating a ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> instance by using language syntax, you can call the ValueTuple.Create<T1,T2,T3,T4,T5,T6,T7,T8>(T1, T2, T3, T4, T5, T6, T7, T8) factory method.

シリアル化と値のタプルSerialization and value tuples

@No__t-0 型は、.NET Core 1.x または .NET Framework 4.7 以前のバージョンではシリアル化できません。The ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> type is not serializable in .NET Core 1.x or in the .NET Framework 4.7 and earlier versions. また、.NET Standard 2.0 を含む .NET Standard では、ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> インスタンスのシリアル化は必須ではありません。@no__t 1 インスタンスがシリアル化できるかどうかは、個々の .NET Standard の実装によって異なります。In addition, .NET Standard, including .NET Standard 2.0, does not mandate serialization of ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> instances; whether or not a ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> instance is serializable depends on the individual .NET Standard implementation. 特定の .NET 実装で @no__t 0 型がシリアル化可能であるかどうかを判断するには、ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> 型を表す @no__t 1 オブジェクトを取得し、その IsSerializable プロパティの値を取得します。To determine whether a ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> type is serializable on a particular .NET implementation, get a Type object that represents the ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> type and retrieve the value of its IsSerializable property. .NET Core と .NET Framework のシリアル化可能な型の一覧については、「バイナリシリアル化」を参照してください。For a list of serializable types in .NET Core and the .NET Framework, see Binary Serialization.

コンストラクター

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

新しい ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> インスタンスを初期化します。Initializes a new ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> instance.

フィールド

Item1

現在の ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> インスタンスの 1 番目の要素の値を取得します。Gets the value of the current ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> instance's first element.

Item2

現在の ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> インスタンスの 2 番目の要素の値を取得します。Gets the value of the current ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> instance's second element.

Item3

現在の ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> インスタンスの 3 番目の要素の値を取得します。Gets the value of the current ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> instance's third element.

Item4

現在の ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> インスタンスの 4 番目の要素の値を取得します。Gets the value of the current ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> instance's fourth element.

Item5

現在の ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> インスタンスの 5 番目の要素の値を取得します。Gets the value of the current ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> instance's fifth element.

Item6

現在の ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> インスタンスの 6 番目の要素の値を取得します。Gets the value of the current ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> instance's sixth element.

Item7

現在の ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> インスタンスの 7 番目の要素の値を取得します。Gets the value of the current ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> instance's seventh element.

Rest

現在の ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> インスタンスの残りの要素を取得します。Gets the current ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> instance's remaining elements.

メソッド

CompareTo(ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest>)

現在の ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> インスタンスを指定した ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> インスタンスと比較します。Compares the current ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> instance to a specified ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> instance.

Equals(Object)

現在の ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> インスタンスが、指定されたオブジェクトと等しいかどうかを示す値を返します。Returns a value that indicates whether the current ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> instance is equal to a specified object.

Equals(ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest>)

現在の ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> インスタンスが、指定された ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> インスタンスと等しいかどうかを示す値を返します。Returns a value that indicates whether the current ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> instance is equal to a specified ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> instance.

GetHashCode()

現在の ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> インスタンスのハッシュ コードを計算します。Calculates the hash code for the current ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> instance.

ToString()

この ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> インスタンスの値を表す文字列を返します。Returns a string that represents the value of this ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> instance.

明示的なインターフェイスの実装

IComparable.CompareTo(Object)

現在の ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> オブジェクトと指定したオブジェクトを比較して、現在のオブジェクトが、並べ替え順序において、指定したオブジェクトの前後または同じ位置のいずれにあるかを示す整数を返します。Compares the current ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> object to a specified object and returns an integer that indicates whether the current object is before, after, or in the same position as the specified object in the sort order.

IStructuralComparable.CompareTo(Object, IComparer)

指定した比較子を使って現在の ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> インスタンスと指定したオブジェクトを比較して、現在のオブジェクトが、並べ替え順序において、指定したオブジェクトの前後または同じ位置のいずれにあるかを示す整数を返します。Compares the current ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> instance to a specified object by using a specified comparer and returns an integer that indicates whether the current object is before, after, or in the same position as the specified object in the sort order.

IStructuralEquatable.Equals(Object, IEqualityComparer)

指定した比較メソッドに基づいて、現在の ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> インスタンスが、指定されたオブジェクトと等しいかどうかを示す値を返します。Returns a value that indicates whether the current ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> instance is equal to a specified object based on a specified comparison method.

IStructuralEquatable.GetHashCode(IEqualityComparer)

指定した計算メソッドを使って現在の ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> インスタンスのハッシュ コードを計算します。Calculates the hash code for the current ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> instance by using a specified computation method.

ITuple.Item[Int32]

指定した ValueTuple 要素の値を取得します。Gets the value of the specified ValueTuple element.

ITuple.Length

ValueTuple にある要素の数を取得します。Gets the number of elements in the ValueTuple.

適用対象

こちらもご覧ください