ValueTuple<T1,T2,T3,T4> Struktura

Definicja

Reprezentuje krotkę wartości z 4 składnikami.

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

Parametry typu

T1

Typ pierwszego elementu kolekcji wartości.

T2

Typ drugiego elementu kolekcji wartości.

T3

Typ trzeciego elementu kolekcji wartości.

T4

Typ czwartego elementu kolekcji wartości.

Dziedziczenie
ValueTuple<T1,T2,T3,T4>
Atrybuty
Implementuje

Uwagi

Krotka wartości to struktura danych, która ma określoną liczbę i sekwencję wartości. Struktura ValueTuple<T1,T2,T3,T4> reprezentuje krotkę wartości zawierającą cztery elementy.

Typy krotki wartości różnią się od typów krotki (takich jak Tuple<T1,T2,T3,T4>) w następujący sposób:

  • Są to struktury (typy wartości), a nie klasy (typy referencyjne).

  • Składowe, takie jak Item1 i Item2 , są polami, a nie właściwościami.

  • Ich pola są modyfikowalne, a nie tylko do odczytu.

Typy krotki wartości zapewniają implementację środowiska uruchomieniowego, która obsługuje krotki w języku C# i krotki struktury w języku F#. Oprócz tworzenia ValueTuple<T1,T2,T3,T4> wystąpienia przy użyciu składni języka można wywołać metodę fabryki Create .

Serializacja i krotki wartości

Typ ValueTuple<T1,T2,T3,T4> nie można serializować na platformie .NET Core 1.x lub w .NET Framework 4.7 i starszych wersjach. Ponadto platforma .NET Standard, w tym .NET Standard 2.0, nie nakazuje serializacji ValueTuple<T1,T2,T3,T4> wystąpień. Niezależnie od tego, czy ValueTuple<T1,T2,T3,T4> wystąpienie można serializować, zależy od pojedynczej implementacji platformy .NET Standard. Aby określić, czy ValueTuple<T1,T2,T3,T4> typ można serializować w określonej implementacji platformy .NET, pobierz Type obiekt reprezentujący ValueTuple<T1,T2,T3,T4> typ i pobierz wartość jego IsSerializable właściwości. Aby uzyskać listę typów możliwych do serializacji na platformie .NET Core i .NET Framework, zobacz Serializacja binarna.

Konstruktory

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

Inicjuje nowe ValueTuple<T1,T2,T3,T4> wystąpienie.

Pola

Item1

Pobiera wartość pierwszego elementu bieżącego ValueTuple<T1,T2,T3,T4> wystąpienia.

Item2

Pobiera wartość drugiego elementu bieżącego ValueTuple<T1,T2,T3,T4> wystąpienia.

Item3

Pobiera wartość trzeciego elementu bieżącego ValueTuple<T1,T2,T3,T4> wystąpienia.

Item4

Pobiera wartość czwartego elementu bieżącego ValueTuple<T1,T2,T3,T4> wystąpienia.

Metody

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

Porównuje bieżące ValueTuple<T1,T2,T3,T4> wystąpienie z określonym ValueTuple<T1,T2,T3,T4> wystąpieniem.

Equals(Object)

Zwraca wartość wskazującą, czy bieżące ValueTuple<T1,T2,T3,T4> wystąpienie jest równe określonemu obiektowi.

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

Zwraca wartość wskazującą, czy bieżące ValueTuple<T1,T2,T3,T4> wystąpienie jest równe określonemu ValueTuple<T1,T2,T3,T4> wystąpieniu.

GetHashCode()

Oblicza kod skrótu dla bieżącego ValueTuple<T1,T2,T3,T4> wystąpienia.

ToString()

Zwraca ciąg reprezentujący wartość tego ValueTuple<T1,T2,T3,T4> wystąpienia.

Jawne implementacje interfejsu

IComparable.CompareTo(Object)

Porównuje bieżące ValueTuple<T1,T2,T3,T4> wystąpienie z określonym obiektem przy użyciu określonego porównania i zwraca liczbę całkowitą wskazującą, czy bieżący obiekt znajduje się przed, po, czy w tej samej pozycji, co określony obiekt w kolejności sortowania.

IStructuralComparable.CompareTo(Object, IComparer)

Porównuje bieżące ValueTuple<T1,T2,T3,T4> wystąpienie z określonym obiektem przy użyciu określonego porównania i zwraca liczbę całkowitą wskazującą, czy bieżący obiekt znajduje się przed, po, czy w tej samej pozycji, co określony obiekt w kolejności sortowania.

IStructuralEquatable.Equals(Object, IEqualityComparer)

Zwraca wartość wskazującą, czy bieżące ValueTuple<T1,T2,T3,T4> wystąpienie jest równe określonemu obiektowi na podstawie określonej metody porównania.

IStructuralEquatable.GetHashCode(IEqualityComparer)

Oblicza kod skrótu dla bieżącego ValueTuple<T1,T2,T3,T4> wystąpienia przy użyciu określonej metody obliczeniowej.

ITuple.Item[Int32]

Pobiera wartość określonego ValueTuple elementu.

ITuple.Length

Pobiera liczbę elementów w elemecie ValueTuple.

Metody rozszerzania

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

Konwertuje wystąpienie ValueTuple struktury na wystąpienie Tuple klasy.

Dotyczy