Tuple<T1,T2,T3>.Item1 Propriedade
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Obtém o valor do primeiro componente do objeto Tuple<T1,T2,T3> atual.
public:
property T1 Item1 { T1 get(); };
public T1 Item1 { get; }
member this.Item1 : 'T1
Public ReadOnly Property Item1 As T1
Valor da propriedade
- T1
O valor do primeiro componente do objeto Tuple<T1,T2,T3> atual.
Exemplos
O exemplo a seguir define uma matriz de objetos Tuple<T1,T2,T3> que contêm os nomes de alunos, as pontuações de teste médias e o número de testes realizados. A matriz é passada para o ComputeStatistics
método, que calcula a pontuação média, o desvio padrão e o número de casos dos quais as estatísticas são calculadas. Esses valores são armazenados no Tuple<T1,T2,T3> objeto retornado pelo ComputeStatistics
método. A Item1 propriedade contém o número de casos.
using System;
public class Example
{
public static void Main()
{
Tuple<string, double, int>[] scores =
{ Tuple.Create("Jack", 78.8, 8),
Tuple.Create("Abbey", 92.1, 9),
Tuple.Create("Dave", 88.3, 9),
Tuple.Create("Sam", 91.7, 8),
Tuple.Create("Ed", 71.2, 5),
Tuple.Create("Penelope", 82.9, 8),
Tuple.Create("Linda", 99.0, 9),
Tuple.Create("Judith", 84.3, 9) };
var result = ComputeStatistics(scores);
Console.WriteLine("Mean score: {0:N2} (SD={1:N2}) (n={2})",
result.Item2, result.Item3, result.Item1);
}
private static Tuple<int, double, double> ComputeStatistics(Tuple<string, double, int>[] scores)
{
int n = 0;
double sum = 0;
// Compute the mean.
foreach (var score in scores)
{
n += score.Item3;
sum += score.Item2 * score.Item3;
}
double mean = sum / n;
// Compute the standard deviation.
double ss = 0;
foreach (var score in scores)
{
ss = Math.Pow(score.Item2 - mean, 2);
}
double sd = Math.Sqrt(ss/scores.Length);
return Tuple.Create(scores.Length, mean, sd);
}
}
// The example displays the following output:
// Mean score: 87.02 (SD=0.96) (n=8)
open System
let computeStatistics (scores: Tuple<string, double, int>[]) =
let mutable n = 0
let mutable sum = 0.
// Compute the mean.
for score in scores do
n <- n + score.Item3
sum <- sum + score.Item2 * double score.Item3
let mean = sum / double n
// Compute the standard deviation.
let mutable ss = 0.
for score in scores do
ss <- (score.Item2 - mean) ** 2.
let sd = sqrt (ss / double scores.Length)
Tuple.Create(scores.Length, mean, sd)
let scores =
[| Tuple.Create("Jack", 78.8, 8)
Tuple.Create("Abbey", 92.1, 9)
Tuple.Create("Dave", 88.3, 9)
Tuple.Create("Sam", 91.7, 8)
Tuple.Create("Ed", 71.2, 5)
Tuple.Create("Penelope", 82.9, 8)
Tuple.Create("Linda", 99.0, 9)
Tuple.Create("Judith", 84.3, 9) |]
let result = computeStatistics scores
printfn $"Mean score: {result.Item2:N2} (SD={result.Item3:N2}) (n={result.Item1})"
// The example displays the following output:
// Mean score: 87.02 (SD=0.96) (n=8)
Module Example
Public Sub Main()
Dim scores() =
{ Tuple.Create("Jack", 78.8, 8),
Tuple.Create("Abbey", 92.1, 9),
Tuple.Create("Dave", 88.3, 9),
Tuple.Create("Sam", 91.7, 8),
Tuple.Create("Ed", 71.2, 5),
Tuple.Create("Penelope", 82.9, 8),
Tuple.Create("Linda", 99.0, 9),
Tuple.Create("Judith", 84.3, 9) }
Dim result = ComputeStatistics(scores)
Console.WriteLine("Mean score: {0:N2} (SD={1:N2}) (n={2})",
result.Item2, result.Item3, result.Item1)
End Sub
Private Function ComputeStatistics(scores() As Tuple(Of String, Double, Integer)) _
As Tuple(Of Integer, Double, Double)
Dim n As Integer = 0
Dim sum As Double = 0
' Compute the mean.
For Each score In scores
n+= score.Item3
sum += score.Item2 * score.Item3
Next
Dim mean As Double = sum / n
' Compute the standard deviation.
Dim ss As Double = 0
For Each score In scores
ss = Math.Pow(score.Item2 - mean, 2)
Next
Dim sd As Double = Math.Sqrt(ss/scores.Length)
Return Tuple.Create(scores.Length, mean, sd)
End Function
End Module
' The example displays the following output:
' Mean score: 87.02 (SD=0.96) (n=8)
Comentários
É possível determinar dinamicamente o tipo do componente Item1 de duas maneiras:
Chamando o método
GetType
no valor retornado pela propriedade Item1.Recuperando o objeto Type que representa o objeto Tuple<T1,T2,T3> e recuperando o primeiro elemento da matriz que é retornada pelo método Type.GetGenericArguments.