Sdílet prostřednictvím


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

Definice

Inicializuje novou instanci Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> třídy.

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)

Parametry

item1
T1

Hodnota první součásti řazené kolekce členů.

item2
T2

Hodnota druhé součásti řazené kolekce členů.

item3
T3

Hodnota třetí součásti řazené kolekce členů.

item4
T4

Hodnota čtvrté komponenty řazené kolekce členů.

item5
T5

Hodnota páté součásti řazené kolekce členů.

item6
T6

Hodnota šesté komponenty řazené kolekce členů.

item7
T7

Hodnota sedmé komponenty řazené kolekce členů.

rest
TRest

Jakýkoli obecný Tuple objekt, který obsahuje hodnoty zbývajících komponent řazené kolekce členů.

Výjimky

rest není obecný Tuple objekt.

Příklady

Následující příklad vytvoří 17 řazenou kolekci členů, která obsahuje data o populaci pro město Detroit, Michigan, pro každý sčítání lidu od 1860 do roku 2000. První komponenta řazené kolekce členů je název města. Druhá komponenta je počáteční datum řady dat a třetí komponenta je základní soubor v počátečním datu. Každá další komponenta poskytuje populaci v desetiletích. Příklad používá dvě vrstvy vnoření k vytvoření 17 řazené kolekce členů: definuje 7 řazenou řazenou kolekci členů, jejíž třetí až sedmá komponenta obsahuje základní data pro 1860 až 1900, vnořenou 7 řazenou kolekci členů obsahující základní data pro 1910 až 1970 a vnitřní vnořenou řazenou kolekci členů pro 1980 až 2000.

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)

Poznámky

Statickou Tuple.Create metodu můžete použít také k vytvoření instance objektu 8 řazené kolekce členů (octuple), aniž byste museli explicitně určit typy jeho komponent. Následující příklad používá metodu Tuple.Create k vytvoření instance objektu 8-tuple, který obsahuje prime čísla, která jsou menší než 20.

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

To odpovídá následujícímu volání konstruktoru Tuple<T1,T2,T3,T4,T5,T6,T7> třídy.

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))

Statickou Tuple.Create metodu však nelze použít k vytvoření objektu řazené kolekce členů s více než osmi komponentami.

Při použití konstruktoru Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> k vytvoření n-řazené kolekce členů s osmi nebo více komponentami použijete rest parametr k vytvoření vnořené n-řazené kolekce členů, která má jednu až sedm komponent. Pomocí následných úrovní vnoření můžete vytvořit n-řazenou kolekci členů, která má prakticky neomezený počet součástí. Pokud chcete například vytvořit 25 řazenou kolekci členů, vytvořte instanci objektu se třemi Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> úrovněmi vnoření, a to takto:

Platí pro

Viz také