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í komponenty řazené kolekce členů.

item2
T2

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

item3
T3

Hodnota třetí komponenty řazené kolekce členů.

item4
T4

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

item5
T5

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

item6
T6

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

item7
T7

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

rest
TRest

Libovolný obecný Tuple objekt, který obsahuje hodnoty zbývajících součástí řazené kolekce členů.

Výjimky

rest není obecný Tuple objekt.

Příklady

Následující příklad vytvoří 17 řazenou kolekci členů, která obsahuje údaje o populaci města Detroit, Michigan, pro každý sčítání lidu z roku 1860 do roku 2000. První součástí ř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 na počátečním datu. Každá další komponenta poskytuje populaci v desetiletých intervalech. Příklad používá dvě vrstvy vnoření k vytvoření 17-řazené kolekce členů: Definuje 7-řazenou kolekci členů, jejíž třetí až sedmé součásti obsahují data základního souboru pro 1860 až 1900, vnořenou 7-řazenou kolekci členů, která obsahuje data základního souboru pro 1910 až 1970, a vnitřní vnořenou řazenou kolekci řazených řazenou kolekci řazených řazených č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 také použít 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-řazené kolekce členů, 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 pomocí parametru rest vytvoříte vnořenou n-řazenou kolekci členů, která má jednu až sedm komponent. Pomocí po sobě jdoucích úrovní vnoření můžete vytvořit n-řazenou kolekci členů, která má prakticky neomezený počet součástí. Chcete-li například vytvořit 25 řazenou kolekci členů, vytvoříte Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> instanci objektu se třemi úrovněmi vnoření následujícím způsobem:

Platí pro

Viz také