Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

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

.NET Framework (current version)
 

Veröffentlicht: Oktober 2016

Stellt ein 5-Tupel (Quintupel) dar.

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

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

[SerializableAttribute]
public class Tuple<T1, T2, T3, T4, T5> : 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.

NameBeschreibung
System_CAPS_pubmethodTuple<T1, T2, T3, T4, T5>(T1, T2, T3, T4, T5)

Initialisiert eine neue Instanz der Tuple<T1, T2, T3, T4, T5>-Klasse.

NameBeschreibung
System_CAPS_pubpropertyItem1

Ruft den Wert des aktuellen Tuple<T1, T2, T3, T4, T5> erste Komponente des Objekts.

System_CAPS_pubpropertyItem2

Ruft den Wert des aktuellen Tuple<T1, T2, T3, T4, T5> die Sekundenkomponente des Objekts.

System_CAPS_pubpropertyItem3

Ruft den Wert des aktuellen Tuple<T1, T2, T3, T4, T5> dritten Komponente des Objekts.

System_CAPS_pubpropertyItem4

Ruft den Wert des aktuellen Tuple<T1, T2, T3, T4, T5> vierten Komponente des Objekts.

System_CAPS_pubpropertyItem5

Ruft den Wert des aktuellen Tuple<T1, T2, T3, T4, T5> fünften Komponente des Objekts.

NameBeschreibung
System_CAPS_pubmethodEquals(Object)

Gibt einen Wert, der angibt, ob die aktuelle Tuple<T1, T2, T3, T4, T5> -Objekt gleich einem angegebenen Objekt ist.(Überschreibt Object.Equals(Object).)

System_CAPS_protmethodFinalize()

Gibt einem Objekt Gelegenheit, Ressourcen freizugeben und andere Bereinigungen durchzuführen, bevor es von der Garbage Collection freigegeben wird. (Geerbt von „Object“.)

System_CAPS_pubmethodGetHashCode()

Gibt den Hashcode für das aktuelle Tuple<T1, T2, T3, T4, T5>-Objekt zurück.(Überschreibt Object.GetHashCode().)

System_CAPS_pubmethodGetType()

Ruft den Type der aktuellen Instanz ab.(Geerbt von „Object“.)

System_CAPS_protmethodMemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.(Geerbt von „Object“.)

System_CAPS_pubmethodToString()

Gibt eine Zeichenfolge zurück, die den Wert dieser Tuple<T1, T2, T3, T4, T5>-Instanz darstellt.(Überschreibt Object.ToString().)

NameBeschreibung
System_CAPS_pubinterfaceSystem_CAPS_privmethodIStructuralComparable.CompareTo(Object, IComparer)

Vergleicht den aktuellen Tuple<T1, T2, T3, T4, T5> Objekt mit einem angegebenen Objekt mithilfe eines angegebenen Vergleichs und gibt eine ganze Zahl, der angibt, ob das aktuelle Objekt vor, nach oder derselben Position wie das angegebene Objekt in der Sortierreihenfolge.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIStructuralEquatable.Equals(Object, IEqualityComparer)

Gibt einen Wert, der angibt, ob die aktuelle Tuple<T1, T2, T3, T4, T5> -Objekt gleich einem angegebenen Objekt auf Grundlage einer angegebenen Vergleichsmethode ist.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIStructuralEquatable.GetHashCode(IEqualityComparer)

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

System_CAPS_pubinterfaceSystem_CAPS_privmethodIComparable.CompareTo(Object)

Vergleicht das aktuelle Tuple<T1, T2, T3, T4, T5> Objekt mit einem angegebenen Objekt und gibt eine ganze Zahl, die angibt, ob das aktuelle Objekt vor, nach oder an derselben Position wie das angegebene Objekt in der Sortierreihenfolge ist.

Ein Tupel ist eine Datenstruktur, die eine bestimmte Anzahl und die Sequenz von Werten aufweist. Die Tuple<T1, T2, T3, T4, T5> -Klasse stellt ein 5-Tupel bzw. Quintupel, ist, die über fünf Komponenten verfügt.

Instanziieren Sie ein Tuple<T1, T2, T3, T4, T5> durch den Aufruf eines Objekts die Tuple<T1, T2, T3, T4, T5> Konstruktor oder die statische Tuple.Create<T1, T2, T3, T4, T5>(T1, T2, T3, T4, T5) Methode. Sie können den Wert der Komponenten des Tupels abrufen, indem Sie mithilfe der schreibgeschützten Item1, Item2, Item3, Item4, und Item5 Instanzeigenschaften.

Tupel werden häufig in vier verschiedene Arten verwendet:

  • Um einen einzelnen Satz von Daten darzustellen. Beispielsweise ein Tupel kann ein Datenbankeintrag darstellen, und seine Komponenten können einzelne Felder des Datensatzes darstellen.

  • Einfacher Zugriff auf und Bearbeitung von einem DataSet bereitzustellen. Das folgende Beispiel definiert ein Array von Tuple<T1, T2, T3, T4, T5> Objekte, die die Namen der Ausführung der Sicherung in American Football enthalten die Summe Spiele, die in dem sie jedes Mal wiedergegeben, und die Anzahl der ausführt, gewonnenen Yards und Punkten durch Touchdowns bewertet werden, während diese spielen. Das Array übergeben wird, um die ComputeStatistics -Methode, die Anzahl der pro Spiel, durchschnittliche Meter pro Spiel, durchschnittliche Meter pro Carry ausführt jede Ausführung-Back und die durchschnittliche Anzahl von Punkten durch Touchdowns pro Versuch berechnet.

    using System;
    using System.Collections.Generic;
    
    public class Example
    {
       public static void Main()
       {
          // Organization of runningBacks 5-tuple:
          //    Component 1: Player name
          //    Component 2: Number of games played
          //    Component 3: Number of attempts (carries)
          //    Component 4: Number of yards gained 
          //    Component 5: Number of touchdowns   
          Tuple<string, int, int, int, int>[] runningBacks =
               { Tuple.Create("Payton, Walter", 190, 3838, 16726, 110),  
                 Tuple.Create("Sanders, Barry", 153, 3062, 15269, 99),            
                 Tuple.Create("Brown, Jim", 118, 2359, 12312, 106),            
                 Tuple.Create("Dickerson, Eric", 144, 2996, 13259, 90),            
                 Tuple.Create("Faulk, Marshall", 176, 2836, 12279, 100) }; 
          // Calculate statistics.
          // Organization of runningStats 5-tuple:
          //    Component 1: Player name
          //    Component 2: Number of attempts per game
          //    Component 3: Number of yards per game
          //    Component 4: Number of yards per attempt 
          //    Component 5: Number of touchdowns per attempt   
          Tuple<string, double, double, double, double>[] runningStats  = 
              ComputeStatistics(runningBacks);
    
          // Display the result.          
          Console.WriteLine("{0,-16} {1,5} {2,6} {3,7} {4,7} {5,7} {6,7} {7,5} {8,7}\n", 
                            "Name", "Games", "Att", "Att/Gm", "Yards", "Yds/Gm",
                            "Yds/Att", "TD", "TD/Att");
          for (int ctr = 0; ctr < runningBacks.Length; ctr++)
             Console.WriteLine("{0,-16} {1,5} {2,6:N0} {3,7:N1} {4,7:N0} {5,7:N1} {6,7:N2} {7,5} {8,7:N3}\n", 
                               runningBacks[ctr].Item1, runningBacks[ctr].Item2, runningBacks[ctr].Item3, 
                               runningStats[ctr].Item2, runningBacks[ctr].Item4, runningStats[ctr].Item3, 
                               runningStats[ctr].Item4, runningBacks[ctr].Item5, runningStats[ctr].Item5);
       }
    
       private static Tuple<string, double, double, double, double>[] ComputeStatistics(
                    Tuple<string, int, int, int, int>[] players) 
       {
          Tuple<string, double, double, double, double> result; 
          var list = new List<Tuple<string, double, double, double, double>>();
    
          foreach (var player in players)
          {
             // Create result object containing player name and statistics.
             result = Tuple.Create(player.Item1,  
                                   player.Item3/((double)player.Item2), 
                                   player.Item4/((double)player.Item2),
                                   player.Item4/((double)player.Item3), 
                                   player.Item5/((double)player.Item3));
             list.Add(result);         
          }
          return list.ToArray();  
       }
    }
    // The example displays the following output:
    //    Name             Games    Att  Att/Gm   Yards  Yds/Gm Yds/Att    TD  TD/Att
    //    
    //    Payton, Walter     190  3,838    20.2  16,726    88.0    4.36   110   0.029
    //    
    //    Sanders, Barry     153  3,062    20.0  15,269    99.8    4.99    99   0.032
    //    
    //    Brown, Jim         118  2,359    20.0  12,312   104.3    5.22   106   0.045
    //    
    //    Dickerson, Eric    144  2,996    20.8  13,259    92.1    4.43    90   0.030
    //    
    //    Faulk, Marshall    176  2,836    16.1  12,279    69.8    4.33   100   0.035
    
  • Mehrere Werte zurückgeben, von einer Methode ohne Verwendung eines out Parameter (in c#) oder ByRef Parameter (in Visual Basic). Das vorherige Beispiel gibt z. B. seine berechnete Statistik, zusammen mit dem Namen der Spieler in ein Array von Tuple<T1, T2, T3, T4, T5> Objekte.

  • Mehrere Werte an eine Methode über einen einzelnen Parameter übergeben. Z. B. die Thread.Start(Object) Methode verfügt über einen einzelnen Parameter, mit dem Sie einen Wert für die Methode angeben, die beim Start der Thread ausgeführt wird. Wenn Sie angeben, ein Tuple<T1, T2, T3, T4, T5> -Objekt als Methodenargument können Sie die Startroutine mit fünf Elementen von Daten angeben.

Universelle Windows-Plattform
Verfügbar seit 8
.NET Framework
Verfügbar seit 4.0
Portierbare Klassenbibliothek
Unterstützt in: portierbare .NET-Plattformen
Silverlight
Verfügbar seit 4.0
Windows Phone Silverlight
Verfügbar seit 8.0
Windows Phone
Verfügbar seit 8.1

Alle öffentlichen statischen Member ( Shared in Visual Basic) dieses Typs sind threadsicher. Die Threadsicherheit für Instanzmember ist nicht garantiert.

Zurück zum Anfang
Anzeigen: