Markieren Sie das Kontrollkästchen Englisch, um die englische Version dieses Artikels anzuzeigen. Sie können den englischen Text auch in einem Popup-Fenster einblenden, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch
Diese Dokumentation wurde archiviert und wird nicht länger gepflegt.

Tuple<T1, T2, T3, T4, T5, T6>-Klasse

Stellt ein 6-Tupel bzw. Sextupel dar.

System.Object
  System.Tuple<T1, T2, T3, T4, T5, T6>

Namespace:  System
Assembly:  mscorlib (in mscorlib.dll)

[SerializableAttribute]
public class Tuple<T1, T2, T3, T4, T5, T6> : IStructuralEquatable, 
	IStructuralComparable, IComparable

Typparameter

T1

Der Typ der ersten Komponente des Tupels.

T2

Der Typ der zweiten Komponente des Tupels.

T3

Der Typ der dritten Komponente des Tupels.

T4

Der Typ der vierten Komponente des Tupels.

T5

Der Typ der fünften Komponente des Tupels.

T6

Der Typ der sechsten Komponente des Tupels.

Der Tuple<T1, T2, T3, T4, T5, T6>-Typ macht die folgenden Member verfügbar.

  NameBeschreibung
Öffentliche MethodeDd386877.PortableClassLibrary(de-de,VS.100).gifTuple<T1, T2, T3, T4, T5, T6>Initialisiert eine neue Instanz der Tuple<T1, T2, T3, T4, T5, T6>-Klasse.
Zum Seitenanfang

  NameBeschreibung
Öffentliche EigenschaftDd386877.PortableClassLibrary(de-de,VS.100).gifItem1Ruft den Wert der ersten Komponente des aktuellen Tuple<T1, T2, T3, T4, T5, T6>-Objekts ab.
Öffentliche EigenschaftDd386877.PortableClassLibrary(de-de,VS.100).gifItem2Ruft den Wert der zweiten Komponente des aktuellen Tuple<T1, T2, T3, T4, T5, T6>-Objekts ab.
Öffentliche EigenschaftDd386877.PortableClassLibrary(de-de,VS.100).gifItem3Ruft den Wert der dritten Komponente des aktuellen Tuple<T1, T2, T3, T4, T5, T6>-Objekts ab.
Öffentliche EigenschaftDd386877.PortableClassLibrary(de-de,VS.100).gifItem4Ruft den Wert der vierten Komponente des aktuellen Tuple<T1, T2, T3, T4, T5, T6>-Objekts ab.
Öffentliche EigenschaftDd386877.PortableClassLibrary(de-de,VS.100).gifItem5Ruft den Wert der fünften Komponente des aktuellen Tuple<T1, T2, T3, T4, T5, T6>-Objekts ab.
Öffentliche EigenschaftDd386877.PortableClassLibrary(de-de,VS.100).gifItem6Ruft den Wert der sechsten Komponente des aktuellen Tuple<T1, T2, T3, T4, T5, T6>-Objekts ab.
Zum Seitenanfang

  NameBeschreibung
Öffentliche MethodeDd386877.PortableClassLibrary(de-de,VS.100).gifEqualsGibt einen Wert zurück, der angibt, ob das aktuelle Tuple<T1, T2, T3, T4, T5, T6>-Objekt gleich einem angegebenen Objekt ist. (Überschreibt Object.Equals(Object).)
Geschützte MethodeDd386877.PortableClassLibrary(de-de,VS.100).gifFinalize Gibt einem Objekt Gelegenheit, Ressourcen freizugeben und andere Bereinigungen durchzuführen, bevor es von der Garbage Collection freigegeben wird. (Von Object geerbt.)
Öffentliche MethodeDd386877.PortableClassLibrary(de-de,VS.100).gifGetHashCodeGibt den Hash für das aktuelle Tuple<T1, T2, T3, T4, T5, T6>-Objekt zurück. (Überschreibt Object.GetHashCode().)
Öffentliche MethodeDd386877.PortableClassLibrary(de-de,VS.100).gifGetTypeRuft den Type der aktuellen Instanz ab. (Von Object geerbt.)
Geschützte MethodeDd386877.PortableClassLibrary(de-de,VS.100).gifMemberwiseCloneErstellt eine flache Kopie des aktuellen Object. (Von Object geerbt.)
Öffentliche MethodeDd386877.PortableClassLibrary(de-de,VS.100).gifToStringGibt eine Zeichenfolge zurück, die den Wert dieser Tuple<T1, T2, T3, T4, T5, T6>-Instanz darstellt. (Überschreibt Object.ToString().)
Zum Seitenanfang

  NameBeschreibung
Explizite SchnittstellenimplementierungPrivate MethodeIComparable.CompareToVergleicht das aktuelle Tuple<T1, T2, T3, T4, T5, T6>-Objekt mit einem angegebenen Objekt und gibt eine ganze Zahl zurück, die angibt, ob sich das aktuelle Element in der Sortierreihenfolge vor, hinter oder an derselben Position wie das angegebene Element befindet.
Explizite SchnittstellenimplementierungPrivate MethodeIStructuralComparable.CompareToVergleicht das aktuelle Tuple<T1, T2, T3, T4, T5, T6>-Objekt mithilfe eines angegebenen Vergleichs mit einem angegebenen Objekt und gibt eine ganze Zahl zurück, die angibt, ob sich das aktuelle Element in der Sortierreihenfolge vor, hinter oder an derselben Position wie das angegebene Element befindet.
Explizite SchnittstellenimplementierungPrivate MethodeIStructuralEquatable.EqualsGibt einen Wert zurück, der auf Grundlage einer angegebenen Vergleichsmethode angibt, ob das aktuelle Tuple<T1, T2, T3, T4, T5, T6>-Objekt gleich einem angegebenen Objekt ist.
Explizite SchnittstellenimplementierungPrivate MethodeIStructuralEquatable.GetHashCodeBerechnet mit einer angegebenen Berechnungsmethode den Hash für das aktuelle Tuple<T1, T2, T3, T4, T5, T6>-Objekt.
Zum Seitenanfang

Ein Tupel ist eine Datenstruktur, die eine bestimmte Anzahl und Sequenz von Werten besitzt. Die Tuple<T1, T2, T3, T4, T5, T6>-Klasse stellt ein 6-Tupel oder Sextupel dar, das über sechs Komponenten verfügt.

Sie können ein Tuple<T1, T2, T3, T4, T5, T6>-Objekt instanziieren, indem Sie entweder Tuple<T1, T2, T3, T4, T5, T6> oder die statische Tuple.Create<T1, T2, T3, T4, T5, T6>(T1, T2, T3, T4, T5, T6)-Methode aufrufen. Sie können den Wert von Komponenten des Tupels mit den schreibgeschützten Instanzeigenschaften Item1, Item2, Item3, Item4, Item5 und Item6 abrufen.

Tupel werden häufig auf vier verschiedene Weisen verwendet:

  • Um einen einzelnen Satz Daten darzustellen. Ein Tupel kann z. B. einen Datenbankdatensatz darstellen, und seine Komponenten können einzelne Felder des Datensatzes darstellen.

  • Um einfachen Zugriff auf und Manipulation eines Datasets bereitzustellen. Im folgenden Beispiel wird ein Tuple<T1, T2, T3, T4, T5, T6>-Objekt definiert, das Bevölkerungsdaten für New York City für jede Volkszählung von 1960 bis 2000 enthält. Das Sextupel wird an die ComputePopulationChange-Methode übergeben, die die jährliche Änderungsrate zwischen Volkszählungen berechnet, sowie die jährliche Änderungsrate für den ganzen 50-Jahreszeitraum.

    
    using System;
    
    public class Example
    {
       public static void Main()
       {
          // Get population data for New York City, 1960-2000.
          var population = 
               Tuple.Create("New York", 7781984, 7894862, 7071639, 7322564, 8008278);
          var rate = ComputePopulationChange(population);
          // Display results.
          Console.WriteLine("Population Change, {0}, 1960-2000\n", population.Item1);
          Console.WriteLine("Year      {0,10} {1,9}", "Population", "Annual Rate");
          Console.WriteLine("1960      {0,10:N0} {1,11}", population.Item2, "NA");
          Console.WriteLine("1970      {0,10:N0} {1,11:P2}", population.Item3, rate.Item2/10);
          Console.WriteLine("1980      {0,10:N0} {1,11:P2}", population.Item4, rate.Item3/10);
          Console.WriteLine("1990      {0,10:N0} {1,11:P2}", population.Item5, rate.Item4/10);
          Console.WriteLine("2000      {0,10:N0} {1,11:P2}", population.Item6, rate.Item5/10);
          Console.WriteLine("1960-2000 {0,10:N0} {1,11:P2}", "", rate.Item6/50);
       }
    
       private static Tuple<string, double, double, double, double, double> ComputePopulationChange(
               Tuple<string, int, int, int, int, int> data)  
       {           
          var rate = Tuple.Create(data.Item1, 
                                  (double)(data.Item3 - data.Item2)/data.Item2, 
                                  (double)(data.Item4 - data.Item3)/data.Item3, 
                                  (double)(data.Item5 - data.Item4)/data.Item4, 
                                  (double)(data.Item6 - data.Item5)/data.Item5,
                                  (double)(data.Item6 - data.Item2)/data.Item2 );
          return rate;
       }           
    }
    // The example displays the following output:
    //       Population Change, New York, 1960-2000
    //       
    //       Year      Population Annual Rate
    //       1960       7,781,984          NA
    //       1970       7,894,862      0.15 %
    //       1980       7,071,639     -1.04 %
    //       1990       7,322,564      0.35 %
    //       2000       8,008,278      0.94 %
    //       1960-2000                 0.06 %
    
    
    
  • Um mehrere Werte ohne die Verwendung von out-Parametern (in C#) oder ByRef-Parametern (in Visual Basic) von einer Methode zurückzugeben. Im vorherigen Beispiel wird z. B. seine berechnete Statistik zusammen mit dem Ortsnamen in einem Tuple<T1, T2, T3, T4, T5, T6>-Objekt zurückgegeben.

  • Um mehrere Werte durch einen einzelnen Parameter an eine Methode zu übergeben. Die Thread.Start(Object)-Methode verfügt z. B. über einen einzelnen Parameter, mit dem Sie einen Wert für die Methode angeben können, die der Thread beim Start ausführt. Wenn Sie ein Tuple<T1, T2, T3, T4, T5, T6>-Objekt als Methodenargument angeben, können Sie die Startroutine des Threads mit sechs Elementen von Daten angeben.

.NET Framework

Unterstützt in: 4

.NET Framework Client Profile

Unterstützt in: 4

Unterstützt in:

Windows 7, Windows Vista SP1 oder höher, Windows XP SP3, Windows Server 2008 (Server Core wird nicht unterstützt), Windows Server 2008 R2 (Server Core wird mit SP1 oder höher unterstützt), Windows Server 2003 SP2

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.

Alle öffentlichen static (Shared in Visual Basic)-Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.
Anzeigen: