ValueTuple<T1,T2,T3,T4> ValueTuple<T1,T2,T3,T4> ValueTuple<T1,T2,T3,T4> ValueTuple<T1,T2,T3,T4> Struct

定義

4 個のコンポーネントを持つ値のタプルを表します。Represents a value tuple with 4 components.

generic <typename T1, typename T2, typename T3, typename T4>
public value class ValueTuple : IComparable, IComparable<ValueTuple<T1, T2, T3, T4>>, IEquatable<ValueTuple<T1, T2, T3, T4>>, System::Collections::IStructuralComparable, System::Collections::IStructuralEquatable, System::Runtime::CompilerServices::ITuple
[System.Serializable]
public struct ValueTuple<T1,T2,T3,T4> : IComparable, IComparable<ValueTuple<T1,T2,T3,T4>>, IEquatable<ValueTuple<T1,T2,T3,T4>>, System.Collections.IStructuralComparable, System.Collections.IStructuralEquatable, System.Runtime.CompilerServices.ITuple
type ValueTuple<'T1, 'T2, 'T3, 'T4> = struct
    interface ITuple
Public Structure ValueTuple(Of T1, T2, T3, T4)
Implements IComparable, IComparable(Of ValueTuple(Of T1, T2, T3, T4)), IEquatable(Of ValueTuple(Of T1, T2, T3, T4)), 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.

継承
ValueTuple<T1,T2,T3,T4>ValueTuple<T1,T2,T3,T4>ValueTuple<T1,T2,T3,T4>ValueTuple<T1,T2,T3,T4>
属性
実装

注釈

値のタプルは、特定の数と値のシーケンスを持つデータ構造です。A value tuple is a data structure that has a specific number and sequence of values. 構造ValueTuple<T1,T2,T3,T4>体は、4つの要素を持つ値のタプルを表します。The ValueTuple<T1,T2,T3,T4> structure represents a value tuple that has four elements.

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

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

  • やなどItem1のメンバー 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#. 言語構文を使用しValueTuple<T1,T2,T3,T4>てインスタンスを作成するだけでなく、 Createファクトリメソッドを呼び出すこともできます。In addition to creating a ValueTuple<T1,T2,T3,T4> instance by using language syntax, you can call the Create factory method.

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

このValueTuple<T1,T2,T3,T4>型は、.net Core 1.x または .NET Framework 4.7 以前のバージョンではシリアル化できません。The ValueTuple<T1,T2,T3,T4> 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>シリアル化を要求しません。 ValueTuple<T1,T2,T3,T4>インスタンスをシリアル化できるかどうかは、個々の .NET Standard の実装によって異なります。In addition, .NET Standard, including .NET Standard 2.0, does not mandate serialization of ValueTuple<T1,T2,T3,T4> instances; whether or not a ValueTuple<T1,T2,T3,T4> instance is serializable depends on the individual .NET Standard implementation. 特定の .net 実装ValueTuple<T1,T2,T3,T4>で型がシリアル化できるかどうかを判断Typeするには、 ValueTuple<T1,T2,T3,T4>型を表すオブジェクトを取得しIsSerializable 、そのプロパティの値を取得します。To determine whether a ValueTuple<T1,T2,T3,T4> type is serializable on a particular .NET implementation, get a Type object that represents the ValueTuple<T1,T2,T3,T4> 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>(T1, T2, T3, T4) ValueTuple<T1,T2,T3,T4>(T1, T2, T3, T4) ValueTuple<T1,T2,T3,T4>(T1, T2, T3, T4) ValueTuple<T1,T2,T3,T4>(T1, T2, T3, T4)

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

フィールド

Item1 Item1 Item1 Item1

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

Item2 Item2 Item2 Item2

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

Item3 Item3 Item3 Item3

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

Item4 Item4 Item4 Item4

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

メソッド

CompareTo(ValueTuple<T1,T2,T3,T4>) CompareTo(ValueTuple<T1,T2,T3,T4>) CompareTo(ValueTuple<T1,T2,T3,T4>) CompareTo(ValueTuple<T1,T2,T3,T4>)

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

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

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

Equals(ValueTuple<T1,T2,T3,T4>) Equals(ValueTuple<T1,T2,T3,T4>) Equals(ValueTuple<T1,T2,T3,T4>) Equals(ValueTuple<T1,T2,T3,T4>)

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

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

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

ToString() ToString() ToString() ToString()

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

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

IStructuralComparable.CompareTo(Object, IComparer) IStructuralComparable.CompareTo(Object, IComparer) IStructuralComparable.CompareTo(Object, IComparer) IStructuralComparable.CompareTo(Object, IComparer)

指定した比較子を使って現在の ValueTuple<T1,T2,T3,T4> インスタンスと指定したオブジェクトを比較して、現在のオブジェクトが、並べ替え順序において、指定したオブジェクトの前後または同じ位置のいずれにあるかを示す整数を返します。Compares the current ValueTuple<T1,T2,T3,T4> 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) IStructuralEquatable.Equals(Object, IEqualityComparer) IStructuralEquatable.Equals(Object, IEqualityComparer) IStructuralEquatable.Equals(Object, IEqualityComparer)

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

IStructuralEquatable.GetHashCode(IEqualityComparer) IStructuralEquatable.GetHashCode(IEqualityComparer) IStructuralEquatable.GetHashCode(IEqualityComparer) IStructuralEquatable.GetHashCode(IEqualityComparer)

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

IComparable.CompareTo(Object) IComparable.CompareTo(Object) IComparable.CompareTo(Object) IComparable.CompareTo(Object)

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

ITuple.Item[Int32] ITuple.Item[Int32] ITuple.Item[Int32] ITuple.Item[Int32]

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

ITuple.Length ITuple.Length ITuple.Length ITuple.Length

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

拡張メソッド

ToTuple<T1,T2,T3,T4>(ValueTuple<T1,T2,T3,T4>) ToTuple<T1,T2,T3,T4>(ValueTuple<T1,T2,T3,T4>) ToTuple<T1,T2,T3,T4>(ValueTuple<T1,T2,T3,T4>) ToTuple<T1,T2,T3,T4>(ValueTuple<T1,T2,T3,T4>)

ValueTuple 構造体のインスタンスを Tuple クラスのインスタンスに変換します。Converts an instance of the ValueTuple structure to an instance of the Tuple class.

適用対象