Aracılığıyla paylaş


Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> Oluşturucu

Tanım

Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> sınıfının yeni bir örneğini başlatır.

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)

Parametreler

item1
T1

Kayıt düzeninin ilk bileşen değeri

item2
T2

Kayıt düzeninin ikinci bileşen değeri

item3
T3

Kayıt düzeninin üçüncü bileşen değeri

item4
T4

Tanımlama grubunun dördüncü bileşeninin değeri.

item5
T5

Kayıt düzeninin beşinci bileşen değeri.

item6
T6

Tanımlama grubunun altıncı bileşeninin değeri.

item7
T7

Tanımlama grubunun yedinci bileşeninin değeri.

rest
TRest

Tanımlama grubunun kalan bileşenlerinin değerlerini içeren herhangi bir genel Tuple nesne.

Özel durumlar

rest genel Tuple bir nesne değildir.

Örnekler

Aşağıdaki örnek, 1860 ile 2000 arasındaki her sayım için Detroit, Michigan şehrine ait nüfus verilerini içeren 17 tanımlama grubu oluşturur. Tanımlama grubunun ilk bileşeni şehir adıdır. İkinci bileşen, veri serisinin başlangıç tarihi, üçüncü bileşen ise başlangıç tarihindeki popülasyondur. Sonraki her bileşen, popülasyonu on yıllık aralıklarla sağlar. Örnek, 17 tanımlama grubu oluşturmak için iki iç içe geçme katmanı kullanır: Üçüncü ve yedinci bileşenleri 1860 ile 1900 arasındaki popülasyon verilerini içeren 7 tanımlama grubu, 1910 ile 1970 arasındaki popülasyon verilerini içeren iç içe 7 tanımlama grubu ve 1980 ile 2000 arasındaki popülasyon verilerini içeren iç içe 3 tanımlama grubu tanımlar.

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)

Açıklamalar

Statik yöntemi kullanarak, bileşenlerinin Tuple.Create türlerini açıkça belirtmek zorunda kalmadan bir 8 tanımlama grubu (sekizli) nesnesinin örneğini oluşturabilirsiniz. Aşağıdaki örnek, 20'den küçük asal sayılar içeren 8 tanımlama grubu nesnesinin örneğini oluşturma yöntemini kullanır Tuple.Create .

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

Bu, sınıf oluşturucusunun aşağıdaki çağrısına Tuple<T1,T2,T3,T4,T5,T6,T7> eşdeğerdir.

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

Ancak statik yöntem, Tuple.Create sekizden fazla bileşene sahip bir tanımlama grubu nesnesi oluşturmak için kullanılamaz.

Sekiz veya daha fazla bileşenle n-tanımlama grubu oluşturmak için oluşturucuyu kullanırken Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> , bir ila yedi bileşeni olan iç içe n tanımlama grubu oluşturmak için parametresini kullanırsınız rest . Ardışık iç içe yerleştirme düzeylerini kullanarak, neredeyse sınırsız sayıda bileşeni olan bir n tanımlama grubu oluşturabilirsiniz. Örneğin, 25 tanımlama grubu oluşturmak için aşağıdaki gibi üç iç içe yerleştirme düzeyine sahip bir Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> nesne örneği oluşturursunuz:

Şunlara uygulanır

Ayrıca bkz.