Tuple<T1,T2,T3,T4,T5,T6,T7,TRest>(T1, T2, T3, T4, T5, T6, T7, TRest) コンストラクター

定義

Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> クラスの新しいインスタンスを初期化します。Initializes a new instance of the Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> class.

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)

パラメーター

item1
T1

組の 1 番目のコンポーネントの値。The value of the tuple's first component.

item2
T2

組の 2 番目のコンポーネントの値。The value of the tuple's second component.

item3
T3

組の 3 番目のコンポーネントの値。The value of the tuple's third component.

item4
T4

組の 4 番目のコンポーネントの値。The value of the tuple's fourth component

item5
T5

組の 5 番目のコンポーネントの値。The value of the tuple's fifth component.

item6
T6

組の 6 番目のコンポーネントの値。The value of the tuple's sixth component.

item7
T7

組の 7 番目のコンポーネントの値。The value of the tuple's seventh component.

rest
TRest

組の残りのコンポーネントの値を格納する汎用 Tuple オブジェクト。Any generic Tuple object that contains the values of the tuple's remaining components.

例外

rest がジェネリック Tuple オブジェクトではありません。rest is not a generic Tuple object.

次の例では、1860から2000の各国勢調査のミシガン市の人口データを含む17組を作成します。The following example creates a 17-tuple that contains population data for the city of Detroit, Michigan, for each census from 1860 to 2000. 組の最初の要素は都市名です。The first component of the tuple is the city name. 2番目のコンポーネントは、一連のデータの開始日です。3番目のコンポーネントは、開始日の母集団です。The second component is the start date of the series of data, and the third component is the population at the start date. 後続の各コンポーネントでは、10分間隔で作成されます。Each subsequent component provides the population at decade intervals. この例では、入れ子になった2つのレイヤーを使用して17組を作成します。このメソッドは、3番目のコンポーネントが1860から1900の母集団データを含む7タプルを定義します。また、1910から1970の母集団データを含む入れ子になった7タプルと、1980から2000の人口データを格納する入れ子になった3つのタプルを定義します。The example uses two layers of nesting to create the 17-tuple: It defines a 7-tuple whose third through seventh components contain population data for 1860 through 1900, a nested 7-tuple that contains population data for 1910 through 1970, and an inner nested 3-tuple that contains population data for 1980 through 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);
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)

注釈

また、静的Tuple.Createメソッドを使用して、そのコンポーネントの型を明示的に指定しなくても、8タプル (octuple) オブジェクトをインスタンス化することができます。You can also use the static Tuple.Create method to instantiate an 8-tuple (octuple) object without having to explicitly specify the types of its components. 次の例ではTuple.Create 、メソッドを使用して、20未満の素数を含む8組のオブジェクトをインスタンス化します。The following example uses the Tuple.Create method to instantiate an 8-tuple object that contains prime numbers that are less than 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
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

これは、 Tuple<T1,T2,T3,T4,T5,T6,T7>クラスコンストラクターへの次の呼び出しに相当します。This is equivalent to the following call to the Tuple<T1,T2,T3,T4,T5,T6,T7> class constructor.

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

ただし、静的Tuple.Createメソッドを使用して、8個を超えるコンポーネントを含むタプルオブジェクトを作成することはできません。However, the static Tuple.Create method cannot be used to create a tuple object with more than eight components.

Tuple<T1,T2,T3,T4,T5,T6,T7,TRest>コンストラクターを使用して、8個以上のコンポーネントを含む n タプルを作成する場合restは、パラメーターを使用して、1 ~ 7 個のコンポーネントからなる入れ子になった n タプルを作成します。When using the Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> constructor to create an n-tuple with eight or more components, you use the rest parameter to create a nested n-tuple that has from one to seven components. 入れ子のレベルを連続して使用することで、ほぼ無制限の数のコンポーネントを持つ n タプルを作成できます。By using successive levels of nesting, you can create an n-tuple that has a virtually unlimited number of components. たとえば、25組を作成するには、次のようTuple<T1,T2,T3,T4,T5,T6,T7,TRest>に3つの入れ子のレベルを持つオブジェクトをインスタンス化します。For example, to create a 25-tuple, you instantiate a Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> object with three levels of nesting, as follows:

適用対象

こちらもご覧ください