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

定義

n 値のタプル (n は 8 以上) を表します。

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
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
public struct ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> : IComparable, IComparable<(T1, T2, T3, T4, T5, T6, T7, TRest)>, IEquatable<(T1, T2, T3, T4, T5, T6, T7, TRest)>, System.Collections.IStructuralComparable, System.Collections.IStructuralEquatable, System.Runtime.CompilerServices.ITuple where TRest : struct
public struct ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> : IComparable, IComparable<(T1, T2, T3, T4, T5, T6, T7, TRest)>, IEquatable<(T1, T2, T3, T4, T5, T6, T7, TRest)>, System.Collections.IStructuralComparable, System.Collections.IStructuralEquatable where TRest : struct
[System.Serializable]
public struct ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> : IComparable, IComparable<(T1, T2, T3, T4, T5, T6, T7, TRest)>, IEquatable<(T1, T2, T3, T4, T5, T6, T7, TRest)>, System.Collections.IStructuralComparable, System.Collections.IStructuralEquatable where TRest : struct
type ValueTuple<'T1, 'T2, 'T3, 'T4, 'T5, 'T6, 'T7, 'Rest (requires 'Rest : struct)> = struct
    interface ITuple
type ValueTuple<'T1, 'T2, 'T3, 'T4, 'T5, 'T6, 'T7, 'Rest (requires 'Rest : struct)> = struct
[<System.Serializable>]
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
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

型パラメーター

T1

値のタプルの 1 番目の要素の型。

T2

値のタプルの 2 番目の要素の型。

T3

値のタプルの 3 番目の要素の型。

T4

値のタプルの 4 番目の要素の型。

T5

値のタプルの 5 番目の要素の型。

T6

値のタプルの 6 番目の要素の型。

T7

値のタプルの 7 番目の要素の型。

TRest

タプルの残りの要素の型を定義する一般的な値のタプル インスタンス。

継承
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

注釈

値タプルは、特定の数値と値のシーケンスを持つデータ構造です。 構造体は ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> 、8 つ以上の要素を持つ値タプルを表します。

値のタプル型は、次のようにタプル型 (など Tuple<T1,T2,T3,T4,T5,T6,T7,TRest>) とは異なります。

  • これらは、クラス (参照型) ではなく構造体 (値型) です。

  • プロパティではなくフィールドなどの Item1 メンバーと Item2 フィールドです。

  • フィールドは、読み取り専用ではなく変更可能です。

値タプル型は、C# のタプルと F # の構造体タプル をサポートするランタイム実装を提供します。 言語構文を使用してインスタンスを ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> 作成するだけでなく、ファクトリ メソッドを ValueTuple.Create<T1,T2,T3,T4,T5,T6,T7,T8>(T1, T2, T3, T4, T5, T6, T7, T8) 呼び出すことができます。

シリアル化と値のタプル

このValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest>型は、.NET Core 1.x または .NET Framework 4.7 以前のバージョンではシリアル化できません。 さらに、.NET Standard 2.0 を含む .NET Standard では、インスタンスの ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> シリアル化は必須ではありません。インスタンスがシリアル化可能かどうか ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> は、個々の .NET Standard 実装によって異なります。 特定の ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> .NET 実装で型がシリアル化可能かどうかを判断するには、型を表すオブジェクトをTypeValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest>取得し、そのIsSerializableプロパティの値を取得します。 .NET Core と.NET Frameworkのシリアル化可能な型の一覧については、「バイナリシリアル化」を参照してください。

コンストラクター

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> インスタンスを初期化します。

フィールド

Item1

現在の ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> インスタンスの 1 番目の要素の値を取得します。

Item2

現在の ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> インスタンスの 2 番目の要素の値を取得します。

Item3

現在の ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> インスタンスの 3 番目の要素の値を取得します。

Item4

現在の ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> インスタンスの 4 番目の要素の値を取得します。

Item5

現在の ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> インスタンスの 5 番目の要素の値を取得します。

Item6

現在の ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> インスタンスの 6 番目の要素の値を取得します。

Item7

現在の ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> インスタンスの 7 番目の要素の値を取得します。

Rest

現在の ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> インスタンスの残りの要素を取得します。

メソッド

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> インスタンスと比較します。

Equals(Object)

現在の ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> インスタンスが、指定されたオブジェクトと等しいかどうかを示す値を返します。

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> インスタンスと等しいかどうかを示す値を返します。

GetHashCode()

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

ToString()

この ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> インスタンスの値を表す文字列を返します。

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

IComparable.CompareTo(Object)

現在の ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> オブジェクトと指定したオブジェクトを比較して、現在のオブジェクトが、並べ替え順序において、指定したオブジェクトの前後または同じ位置のいずれにあるかを示す整数を返します。

IStructuralComparable.CompareTo(Object, IComparer)

指定した比較子を使って現在の ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> インスタンスと指定したオブジェクトを比較して、現在のオブジェクトが、並べ替え順序において、指定したオブジェクトの前後または同じ位置のいずれにあるかを示す整数を返します。

IStructuralEquatable.Equals(Object, IEqualityComparer)

指定した比較メソッドに基づいて、現在の ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> インスタンスが、指定されたオブジェクトと等しいかどうかを示す値を返します。

IStructuralEquatable.GetHashCode(IEqualityComparer)

指定した計算メソッドを使って現在の ValueTuple<T1,T2,T3,T4,T5,T6,T7,TRest> インスタンスのハッシュ コードを計算します。

ITuple.Item[Int32]

指定した ValueTuple 要素の値を取得します。

ITuple.Length

ValueTuple にある要素の数を取得します。

適用対象

こちらもご覧ください