ValueTuple<T1,T2,T3,T4> Struktur

Definition

Stellt ein Werttupel mit vier Komponenten dar.

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

Typparameter

T1

Der Typ des ersten Elements des Werttupels.

T2

Der Typ des zweiten Elements des Werttupels.

T3

Der Typ des dritten Elements des Werttupels.

T4

Der Typ des vierten Elements des Werttupels.

Vererbung
ValueTuple<T1,T2,T3,T4>
Attribute
Implementiert

Hinweise

Ein Werttupel ist eine Datenstruktur, die über eine bestimmte Anzahl und Sequenz von Werten verfügt. Die ValueTuple<T1,T2,T3,T4> -Struktur stellt ein Werttupel mit vier Elementen dar.

Die Werttupeltypen unterscheiden sich von den Tupeltypen (z Tuple<T1,T2,T3,T4>. B. ) wie folgt:

  • Dabei handelt es sich um Strukturen (Werttypen) und nicht um Klassen (Verweistypen).

  • Member wie Item1 und Item2 sind Felder und nicht Eigenschaften.

  • Ihre Felder sind veränderlich und nicht schreibgeschützt.

Die Werttupeltypen stellen die Laufzeitimplementierung bereit, die Tupel in C# und Strukturtupel in F# unterstützt. Zusätzlich zum Erstellen eines ValueTuple<T1,T2,T3,T4> instance mithilfe der Sprachsyntax können Sie die Create Factorymethode aufrufen.

Serialisierung und Werttupel

Der ValueTuple<T1,T2,T3,T4> Typ ist in .NET Core 1.x oder in den .NET Framework 4.7 und früheren Versionen nicht serialisierbar. Darüber hinaus schreibt .NET Standard, einschließlich .NET Standard 2.0, keine Serialisierung von ValueTuple<T1,T2,T3,T4> Instanzen vor. Ob ein ValueTuple<T1,T2,T3,T4> instance serialisierbar ist, hängt von der einzelnen .NET Standard-Implementierung ab. Um zu bestimmen, ob ein ValueTuple<T1,T2,T3,T4> Typ in einer bestimmten .NET-Implementierung serialisierbar ist, rufen Sie ein Type Objekt ab, das den ValueTuple<T1,T2,T3,T4> Typ darstellt, und rufen Sie den Wert seiner IsSerializable Eigenschaft ab. Eine Liste der serialisierbaren Typen in .NET Core und der .NET Framework finden Sie unter Binäre Serialisierung.

Konstruktoren

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

Initialisiert eine neue Instanz von ValueTuple<T1,T2,T3,T4>.

Felder

Item1

Ruft den Wert des ersten Elements der aktuellen ValueTuple<T1,T2,T3,T4>-Instanz ab.

Item2

Ruft den Wert des zweiten Elements der aktuellen ValueTuple<T1,T2,T3,T4>-Instanz ab.

Item3

Ruft den Wert des dritten Elements der aktuellen ValueTuple<T1,T2,T3,T4>-Instanz ab.

Item4

Ruft den Wert des vierten Elements der aktuellen ValueTuple<T1,T2,T3,T4>-Instanz ab.

Methoden

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

Vergleicht die aktuelle ValueTuple<T1,T2,T3,T4>-Instanz mit einer angegebenen ValueTuple<T1,T2,T3,T4>-Instanz.

Equals(Object)

Gibt einen Wert zurück, der angibt, ob die aktuelle ValueTuple<T1,T2,T3,T4>-Instanz gleich einem angegebenen Objekt ist.

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

Gibt einen Wert zurück, der angibt, ob die aktuelle ValueTuple<T1,T2,T3,T4>-Instanz gleich einer angegebenen ValueTuple<T1,T2,T3,T4>-Instanz ist.

GetHashCode()

Berechnet den Hashcode für die aktuelle ValueTuple<T1,T2,T3,T4>-Instanz.

ToString()

Gibt eine Zeichenfolge zurück, die den Wert dieser ValueTuple<T1,T2,T3,T4>-Instanz darstellt.

Explizite Schnittstellenimplementierungen

IComparable.CompareTo(Object)

Vergleicht die aktuelle ValueTuple<T1,T2,T3,T4>-Instanz mit einem angegebenen Objekt unter Verwendung der angegebenen Vergleichsfunktion und gibt eine Ganzzahl zurück, die darauf hinweist, ob sich das aktuelle Objekt in der Sortierreihenfolge vor oder hinter dem angegebenen Objekt oder an der gleichen Position befindet.

IStructuralComparable.CompareTo(Object, IComparer)

Vergleicht die aktuelle ValueTuple<T1,T2,T3,T4>-Instanz mit einem angegebenen Objekt unter Verwendung der angegebenen Vergleichsfunktion und gibt eine Ganzzahl zurück, die darauf hinweist, ob sich das aktuelle Objekt in der Sortierreihenfolge vor oder hinter dem angegebenen Objekt oder an der gleichen Position befindet.

IStructuralEquatable.Equals(Object, IEqualityComparer)

Gibt einen Wert zurück, der angibt, ob die aktuelle ValueTuple<T1,T2,T3,T4>-Instanz nach einer angegebenen Vergleichsmethode gleich einem angegebenen Objekt ist.

IStructuralEquatable.GetHashCode(IEqualityComparer)

Berechnet den Hashcode für die aktuelle ValueTuple<T1,T2,T3,T4>-Instanz mit einer angegebenen Berechnungsmethode.

ITuple.Item[Int32]

Ruft den Wert des angegebenen Elements ValueTuple ab.

ITuple.Length

Ruft die Anzahl der Elemente im ValueTuple ab.

Erweiterungsmethoden

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

Konvertiert einen instance der ValueTuple -Struktur in einen instance der Tuple -Klasse.

Gilt für: