Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> Konstruktor

Definition

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

public:
 Tuple(T1 item1, T2 item2, T3 item3, T4 item4, T5 item5, T6 item6, T7 item7, TRest rest);
public Tuple (T1 item1, T2 item2, T3 item3, T4 item4, T5 item5, T6 item6, T7 item7, TRest rest);
new Tuple<'T1, 'T2, 'T3, 'T4, 'T5, 'T6, 'T7, 'Rest> : 'T1 * 'T2 * 'T3 * 'T4 * 'T5 * 'T6 * 'T7 * 'Rest -> Tuple<'T1, 'T2, 'T3, 'T4, 'T5, 'T6, 'T7, 'Rest>
Public Sub New (item1 As T1, item2 As T2, item3 As T3, item4 As T4, item5 As T5, item6 As T6, item7 As T7, rest As TRest)

Parameter

item1
T1

Der Wert der ersten Komponente des Tupels.

item2
T2

Der Wert der zweiten Komponente des Tupels.

item3
T3

Der Wert der dritten Komponente des Tupels.

item4
T4

Der Wert der vierten Komponente des Tupels.

item5
T5

Der Wert der fünften Komponente des Tupels.

item6
T6

Der Wert der sechsten Komponente des Tupels.

item7
T7

Der Wert der siebten Komponente des Tupels.

rest
TRest

Ein beliebiges generisches Tuple-Objekt, das die Werte der restlichen Komponenten des Tupels enthält.

Ausnahmen

rest ist kein generisches Tuple-Objekt.

Beispiele

Im folgenden Beispiel wird ein 17-Tupel erstellt, das Bevölkerungsdaten für die Stadt Detroit, Michigan, für jede Volkszählung zwischen 1860 und 2000 enthält. Die erste Komponente des Tupels ist der Name der Stadt. Die zweite Komponente ist das Startdatum der Datenreihe, und die dritte Komponente ist die Auffüllung am Startdatum. Jede nachfolgende Komponente stellt die Population in Zehnerintervallen bereit. Das Beispiel verwendet zwei Ebenen der Schachtelung, um das 17-Tupel zu erstellen: Es definiert ein 7-Tupel, dessen dritte bis siebte Komponenten Populationsdaten für 1860 bis 1900 enthalten, ein geschachteltes 7-Tupel, das Bevölkerungsdaten für 1910 bis 1970 enthält, und ein inneres geschachteltes 3-Tupel, das Bevölkerungsdaten für 1980 bis 2000 enthält.

var from1980 = Tuple.Create(1203339, 1027974, 951270);
var from1910 = new Tuple<int, int, int, int, int, int, int, Tuple<int, int, int>> 
    (465766, 993078, 1568622, 1623452, 1849568, 1670144, 1511462, from1980);
var population = new Tuple<string, int, int, int, int, int, int,
    Tuple<int, int, int, int, int, int, int, Tuple<int, int, int>>> 
    ("Detroit", 1860, 45619, 79577, 116340, 205876, 285704, from1910);
let from1980 = Tuple.Create(1203339, 1027974, 951270)
let from1910 = new Tuple<int, int, int, int, int, int, int, Tuple<int, int, int>>(465766, 993078, 1568622, 1623452, 1849568, 1670144, 1511462, from1980)
let population = new Tuple<string, int, int, int, int, int, int, Tuple<int, int, int, int, int, int, int, Tuple<int, int, int>>>("Detroit", 1860, 45619, 79577, 116340, 205876, 285704, from1910)
Dim from1980 = Tuple.Create(1203339, 1027974, 951270)
Dim from1910 As New Tuple(Of Integer, Integer, Integer, Integer, Integer, Integer, Integer, _
    Tuple(Of Integer, Integer, Integer)) _
    (465766, 993078, 1568622, 1623452, 1849568, 1670144, 1511462, from1980)
Dim population As New Tuple(Of String, Integer, Integer, Integer, Integer, Integer, Integer, _ 
    Tuple(Of Integer, Integer, Integer, Integer, Integer, Integer, Integer, Tuple(Of Integer, Integer, Integer))) _
    ("Detroit", 1860, 45619, 79577, 116340, 205876, 285704, from1910)

Hinweise

Sie können auch die statische Tuple.Create Methode verwenden, um ein 8-Tupel-Objekt (Octuple) zu instanziieren, ohne die Typen seiner Komponenten explizit angeben zu müssen. Im folgenden Beispiel wird die Tuple.Create -Methode verwendet, um ein 8-Tupel-Objekt zu instanziieren, das Primzahlen enthält, die kleiner als 20 sind.

var primes = Tuple.Create(2, 3, 5, 7, 11, 13, 17, 19);
Console.WriteLine("Prime numbers less than 20: " + 
                  "{0}, {1}, {2}, {3}, {4}, {5}, {6}, and {7}",
                  primes.Item1, primes.Item2, primes.Item3, 
                  primes.Item4, primes.Item5, primes.Item6,
                  primes.Item7, primes.Rest.Item1);
// The example displays the following output:
//    Prime numbers less than 20: 2, 3, 5, 7, 11, 13, 17, and 19
open System

let primes = Tuple.Create(2, 3, 5, 7, 11, 13, 17, 19)
printfn $"Prime numbers less than 20: {primes.Item1}, {primes.Item2}, {primes.Item3}, {primes.Item4}, {primes.Item5}, {primes.Item6}, {primes.Item7}, and {primes.Rest.Item1}"
//    Prime numbers less than 20: 2, 3, 5, 7, 11, 13, 17, and 19
Dim primes = Tuple.Create(2, 3, 5, 7, 11, 13, 17, 19)
Console.WriteLine("Prime numbers less than 20: " + 
                  "{0}, {1}, {2}, {3}, {4}, {5}, {6}, and {7}",
                  primes.Item1, primes.Item2, primes.Item3, 
                  primes.Item4, primes.Item5, primes.Item6,
                  primes.Item7, primes.Rest.Item1)
' The example displays the following output:
'     Prime numbers less than 20: 2, 3, 5, 7, 11, 13, 17, and 19

Dies entspricht dem folgenden Aufruf des Tuple<T1,T2,T3,T4,T5,T6,T7> Klassenkonstruktors.

var primes = new Tuple<Int32, Int32, Int32, Int32, Int32, Int32, Int32,  
             Tuple<Int32>> (2, 3, 5, 7, 11, 13, 17, new Tuple<Int32>(19));
let primes = new Tuple<Int32, Int32, Int32, Int32, Int32, Int32, Int32,  
               Tuple<Int32>> (2, 3, 5, 7, 11, 13, 17, new Tuple<Int32>(19))
Dim primes = New Tuple(Of Int32, Int32, Int32, Int32, Int32, Int32, Int32, _ 
             Tuple(Of Int32))(2, 3, 5, 7, 11, 13, 17, New Tuple(Of Int32)(19))

Die statische Tuple.Create Methode kann jedoch nicht verwendet werden, um ein Tupelobjekt mit mehr als acht Komponenten zu erstellen.

Wenn Sie den Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> Konstruktor verwenden, um ein n-Tupel mit acht oder mehr Komponenten zu erstellen, verwenden Sie den rest Parameter, um ein geschachteltes n-Tupel zu erstellen, das über eine bis sieben Komponenten verfügt. Mithilfe aufeinander folgender Schachtelungsebenen können Sie ein n-Tupel erstellen, das über eine nahezu unbegrenzte Anzahl von Komponenten verfügt. Um beispielsweise ein 25-Tupel zu erstellen, instanziieren Sie ein Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> Objekt mit drei Schachtelungsebenen wie folgt:

Gilt für:

Weitere Informationen