Tuple<T1>.Item1 Property
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Gets the value of the Tuple<T1> object's single component.
public:
property T1 Item1 { T1 get(); };
public T1 Item1 { get; }
member this.Item1 : 'T1
Public ReadOnly Property Item1 As T1
Property Value
The value of the current Tuple<T1> object's single component.
Examples
The following example displays information about two singletons and their components.
using System;
using System.Numerics;
public class Example
{
public static void Main()
{
var tuple1 = Tuple.Create(-1.23445e-32);
// Display information about this singleton.
Type tuple1Type = tuple1.GetType();
Console.WriteLine("First 1-Tuple:");
Console.WriteLine(" Type: {0}", tuple1Type.Name);
Console.WriteLine(" Generic Parameter Type: {0}",
tuple1Type.GetGenericArguments()[0]);
Console.WriteLine(" Component Value: {0}", tuple1.Item1);
Console.WriteLine(" Component Value Type: {0}",
tuple1.Item1.GetType().Name);
Console.WriteLine();
var tuple2 = Tuple.Create((BigInteger)1.83789322281780983781356676e103);
// Display information about this singleton.
Type tuple2Type = tuple2.GetType();
Console.WriteLine("Second 1-Tuple:");
Console.WriteLine(" Type: {0}", tuple2Type.Name);
Console.WriteLine(" Generic Parameter Type: {0}",
tuple2Type.GetGenericArguments()[0]);
Console.WriteLine(" Component Value: {0}", tuple2.Item1);
Console.WriteLine(" Component Value Type: {0}",
tuple2.Item1.GetType().Name);
}
}
// The example displays the following output:
// First 1-Tuple:
// Type: Tuple`1
// Generic Parameter Type: System.Double
// Component Value: -1.23445E-32
// Component Value Type: Double
//
// Second 1-Tuple:
// Type: Tuple`1
// Generic Parameter Type: System.Numerics.BigInteger
// Component Value: 1.8378932228178098168858909492E+103
// Component Value Type: BigInteger
open System
let tuple1 = Tuple.Create -1.23445e-32
// Display information about this singleton.
let tuple1Type = tuple1.GetType()
printfn "First 1-Tuple:"
printfn $" Type: {tuple1Type.Name}"
printfn $" Generic Parameter Type: {tuple1Type.GetGenericArguments()[0]}"
printfn $" Component Value: {tuple1.Item1}"
printfn $" Component Value Type: {tuple1.Item1.GetType().Name}\n"
let tuple2 = Tuple.Create(bigint 1.83789322281780983781356676e103)
// Display information about this singleton.
let tuple2Type = tuple2.GetType()
printfn "Second 1-Tuple:"
printfn $" Type: {tuple2Type.Name}"
printfn $" Generic Parameter Type: {tuple2Type.GetGenericArguments()[0]}"
printfn $" Component Value: {tuple2.Item1}"
printfn $" Component Value Type: {tuple2.Item1.GetType().Name}"
// The example displays the following output:
// First 1-Tuple:
// Type: Tuple`1
// Generic Parameter Type: System.Double
// Component Value: -1.23445E-32
// Component Value Type: Double
//
// Second 1-Tuple:
// Type: Tuple`1
// Generic Parameter Type: System.Numerics.BigInteger
// Component Value: 1.8378932228178098168858909492E+103
// Component Value Type: BigInteger
Imports System.Numerics
Module modMain
Public Sub Main()
Dim tuple1 = Tuple.Create(-1.23445e-32)
' Display information about this singleton.
Dim tuple1Type As Type = tuple1.GetType()
Console.WriteLine("First 1-Tuple:")
Console.WriteLine(" Type: {0}", tuple1Type.Name)
Console.WriteLine(" Generic Parameter Type: {0}",
tuple1Type.GetGenericArguments()(0))
Console.WriteLine(" Component Value: {0}", tuple1.Item1)
Console.WriteLine(" Component Value Type: {0}",
tuple1.Item1.GetType().Name)
Console.WriteLine()
Dim tuple2 As New Tuple(Of BigInteger)(1.83789322281780983781356676e103)
' Display information about this singleton.
Dim tuple2Type As Type = tuple2.GetType()
Console.WriteLine("Second 1-Tuple:")
Console.WriteLine(" Type: {0}", tuple2Type.Name)
Console.WriteLine(" Generic Parameter Type: {0}",
tuple2Type.GetGenericArguments()(0))
Console.WriteLine(" Component Value: {0}", tuple2.Item1)
Console.WriteLine(" Component Value Type: {0}",
tuple2.Item1.GetType().Name)
End Sub
End Module
' The example displays the following output:
' First 1-Tuple:
' Type: Tuple`1
' Generic Parameter Type: System.Double
' Component Value: -1.23445E-32
' Component Value Type: Double
'
' Second 1-Tuple:
' Type: Tuple`1
' Generic Parameter Type: System.Numerics.BigInteger
' Component Value: 1.8378932228178098168858909492E+103
' Component Value Type: BigInteger
Remarks
You can determine the type of the Item1 component in one of two ways:
By calling the
GetType
method on the value that is returned by the Item1 property.By retrieving the Type object that represents the Tuple<T1> object, and retrieving the first element from the array that is returned by its Type.GetGenericArguments method.
The example illustrates both approaches.