Tuple<T1,T2,T3,T4,T5,T6,T7,TRest>.Item5 属性

定义

获取当前 Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> 对象的第五个分量的值。Gets the value of the current Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> object's fifth component.

public:
 property T5 Item5 { T5 get(); };
public T5 Item5 { get; }
member this.Item5 : 'T5
Public ReadOnly Property Item5 As T5

属性值

T5

当前 Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> 对象的第五个分量的值。The value of the current Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> object's fifth component.

示例

下面的示例创建一个17元组对象,该对象包含从1860到2000的 Detroit 的城市人口数据。The following example creates a 17-tuple object that contains population data for the city of Detroit, Michigan, from 1860 to 2000. 17元组的第五个分量是1880的人口。The fifth component of the 17-tuple is the population in 1880. 该示例使用 Item5 属性来显示总体值,并计算1880与1890之间人口变动的年率。The example uses the Item5 property to display the population value and to calculate the annual rate of population change between 1880 and 1890.

using System;

class Example
{
    static void Main(string[] args)
    {
        Tuple<int, int, int> 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);

        Console.WriteLine("Population of {0}", population.Item1);
        Console.WriteLine();
        Console.WriteLine("{0,5}  {1,14}  {2,10}", "Year", "Population", "Change");

        int year = population.Item2;
        ShowPopulation(year, population.Item3);
        year += 10;
        ShowPopulationChange(year, population.Item4, population.Item3);
        year += 10;
        ShowPopulationChange(year, population.Item5, population.Item4);
        year += 10;
        ShowPopulationChange(year, population.Item6, population.Item5);
        year += 10;
        ShowPopulationChange(year, population.Item7, population.Item6);
        year += 10;
        ShowPopulationChange(year, population.Rest.Item1, population.Item7);
        year += 10;
        ShowPopulationChange(year, population.Rest.Item2, population.Rest.Item1);
        year += 10;
        ShowPopulationChange(year, population.Rest.Item3, population.Rest.Item2);
        year += 10;
        ShowPopulationChange(year, population.Rest.Item4, population.Rest.Item3);
        year += 10;
        ShowPopulationChange(year, population.Rest.Item5, population.Rest.Item4);
        year += 10;
        ShowPopulationChange(year, population.Rest.Item6, population.Rest.Item5);
        year += 10;
        ShowPopulationChange(year, population.Rest.Item7, population.Rest.Item6);
        year += 10;
        ShowPopulationChange(year, population.Rest.Rest.Item1, population.Rest.Item7);
        year += 10;
        ShowPopulationChange(year, population.Rest.Rest.Item2, population.Rest.Rest.Item1);
        year += 10;
        ShowPopulationChange(year, population.Rest.Rest.Item3, population.Rest.Rest.Item2);
    }

    private static void ShowPopulationChange(int year, int newPopulation, int oldPopulation)
    {
        Console.WriteLine("{0,5}  {1,14:N0}  {2,10:P2}", year, newPopulation,
                          ((double)(newPopulation - oldPopulation) / oldPopulation) / 10);
    }

    private static void ShowPopulation(int year, int newPopulation)
    {
        Console.WriteLine("{0,5}  {1,14:N0}  {2,10:P2}", year, newPopulation, "n/a");
    }
}
// The example displays the following output:
//
//    Population of Detroit
//    Year      Population      Change
//    1860          45,619         n/a
//    1870          79,577      7.44 %
//    1880         116,340      4.62 %
//    1890         205,876      7.70 %
//    1900         285,704      3.88 %
//    1910         465,766      6.30 %
//    1920         993,078     11.32 %
//    1930       1,568,622      5.80 %
//    1940       1,623,452      0.35 %
//    1950       1,849,568      1.39 %
//    1960       1,670,144     -0.97 %
//    1970       1,511,462     -0.95 %
//    1980       1,203,339     -2.04 %
//    1990       1,027,974     -1.46 %
//    2000         951,270     -0.75 %
Module Example
    Sub Main()
        Dim from1980 As Tuple(Of Integer, Integer, Integer) =
            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)

        Console.WriteLine("Population of {0}", population.Item1)
        Console.WriteLine()
        Console.WriteLine("{0,5}  {1,14}  {2,10}", "Year", "Population", "Change")

        Dim year As Integer = population.Item2
        ShowPopulation(year, population.Item3)
        year += 10
        ShowPopulationChange(year, population.Item4, population.Item3)
        year += 10
        ShowPopulationChange(year, population.Item5, population.Item4)
        year += 10
        ShowPopulationChange(year, population.Item6, population.Item5)
        year += 10
        ShowPopulationChange(year, population.Item7, population.Item6)
        year += 10
        ShowPopulationChange(year, population.Rest.Item1, population.Item7)
        year += 10
        ShowPopulationChange(year, population.Rest.Item2, population.Rest.Item1)
        year += 10
        ShowPopulationChange(year, population.Rest.Item3, population.Rest.Item2)
        year += 10
        ShowPopulationChange(year, population.Rest.Item4, population.Rest.Item3)
        year += 10
        ShowPopulationChange(year, population.Rest.Item5, population.Rest.Item4)
        year += 10
        ShowPopulationChange(year, population.Rest.Item6, population.Rest.Item5)
        year += 10
        ShowPopulationChange(year, population.Rest.Item7, population.Rest.Item6)
        year += 10
        ShowPopulationChange(year, population.Rest.Rest.Item1, population.Rest.Item7)
        year += 10
        ShowPopulationChange(year, population.Rest.Rest.Item2, population.Rest.Rest.Item1)
        year += 10
        ShowPopulationChange(year, population.Rest.Rest.Item3, population.Rest.Rest.Item2)
    End Sub

    Private Sub ShowPopulationChange(ByVal year As Integer, ByVal newPopulation As Integer, ByVal oldPopulation As Integer)
        Console.WriteLine("{0,5}  {1,14:N0}  {2,10:P2}", year, newPopulation,
                          (newPopulation - oldPopulation) / oldPopulation / 10)
    End Sub

    Private Sub ShowPopulation(ByVal year As Integer, ByVal newPopulation As Integer)
        Console.WriteLine("{0,5}  {1,14:N0}  {2,10:P2}", year, newPopulation, "n/a")
    End Sub
End Module
' The example displays the following output:
'
'    Population of Detroit
'    Year      Population      Change
'    1860          45,619         n/a
'    1870          79,577      7.44 %
'    1880         116,340      4.62 %
'    1890         205,876      7.70 %
'    1900         285,704      3.88 %
'    1910         465,766      6.30 %
'    1920         993,078     11.32 %
'    1930       1,568,622      5.80 %
'    1940       1,623,452      0.35 %
'    1950       1,849,568      1.39 %
'    1960       1,670,144     -0.97 %
'    1970       1,511,462     -0.95 %
'    1980       1,203,339     -2.04 %
'    1990       1,027,974     -1.46 %
'    2000         951,270     -0.75 %

注解

可以 Item5 通过以下两种方式之一动态确定组件的类型:You can dynamically determine the type of the Item5 component in one of two ways:

适用于