|
Dieser Artikel wurde maschinell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. Weitere Informationen
|
Übersetzung
Original
|
Tuple<T1, T2, T3, T4, T5>-Klasse
Namespace: System
Assembly: mscorlib (in mscorlib.dll)
[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.
Der Tuple<T1, T2, T3, T4, T5>-Typ macht die folgenden Member verfügbar.
| Name | Beschreibung | |
|---|---|---|
![]() ![]() ![]() | Tuple<T1, T2, T3, T4, T5> |
| Name | Beschreibung | |
|---|---|---|
![]() ![]() ![]() | Item1 | |
![]() ![]() ![]() | Item2 | |
![]() ![]() ![]() | Item3 | |
![]() ![]() ![]() | Item4 | |
![]() ![]() ![]() | Item5 |
| Name | Beschreibung | |
|---|---|---|
![]() ![]() ![]() | Equals | |
![]() ![]() ![]() | Finalize | |
![]() ![]() ![]() | GetHashCode | |
![]() ![]() ![]() | GetType | |
![]() ![]() ![]() | MemberwiseClone | |
![]() ![]() ![]() | ToString |
| Name | Beschreibung | |
|---|---|---|
![]() ![]() ![]() ![]() | IComparable.CompareTo | |
![]() ![]() ![]() ![]() | IStructuralComparable.CompareTo | |
![]() ![]() ![]() ![]() | IStructuralEquatable.Equals | |
![]() ![]() ![]() ![]() | IStructuralEquatable.GetHashCode |
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 werden ein Array von Tuple<T1, T2, T3, T4, T5>-Objekten, die die Namen von Running Backs im amerikanischem Football enthalten, die Anzahl der gespielten Spiele und die Zahl der Carrys, der gesamten gewonnenen Yards und der in diesen Spielen erzielten Touchdowns. Das Array wird an die ComputeStatistics-Methode übergeben. Diese berechnet die Anzahl der Läufe jedes Running Backs mit Ball pro Spiel, die durchschnittliche Anzahl der Yards pro Spiel, die durchschnittliche Anzahl der Yards pro Lauf mit Ball sowie die durchschnittliche Anzahl der Touchdowns pro Versuch. 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
Um mehrere Werte ohne die Verwendung von out-Parametern (in C#) oder ByRef-Parametern (in Visual Basic) von einer Methode zurückzugeben. Das vorherige Beispiel gibt z. B. seine berechnete Statistik, zusammen mit dem Namen des Spielers, in einem Array von Tuple<T1, T2, T3, T4, T5>-Objekten zurück. 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>-Objekt als Methodenargument angeben, können Sie die Startroutine des Threads mit fünf Elementen von Daten angeben.
Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core-Rolle wird nicht unterstützt), Windows Server 2008 R2 (Server Core-Rolle wird mit SP1 oder höher unterstützt; Itanium wird nicht unterstützt)
.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.


