Este artigo foi traduzido por máquina. Coloque o ponteiro do mouse sobre as frases do artigo para ver o texto original. Mais informações.
Tradução
Original
Este tópico ainda não foi avaliado como - Avalie este tópico

Método Enumerable.Sum<TSource> (IEnumerable<TSource>, Func<TSource, Double>)

Calcula a soma da seqüência de Double os valores que são obtidos chamando uma função de transformação em cada elemento da seqüência de entrada.

Namespace:  System.Linq
Assembly:  System.Core (em System.Core.dll)
public static double Sum<TSource>(
	this IEnumerable<TSource> source,
	Func<TSource, double> selector
)

Parâmetros de tipo

TSource

O tipo dos elementos de source.

Parâmetros

source
Tipo: System.Collections.Generic.IEnumerable<TSource>
Uma seqüência de valores que são usados para calcular uma soma.
selector
Tipo: System.Func<TSource, Double>
Uma função de transformação para aplicar a cada elemento.

Valor de retorno

Tipo: System.Double
A soma dos valores projetados.

Observação de uso

No Visual Basic e no C#, você pode chamar esse método como um método de instância em qualquer objeto do tipo IEnumerable<TSource>. Quando você usar a sintaxe de método de instância para chamar esse método, omita o primeiro parâmetro. Para obter mais informações, consulte Métodos de extensão (Visual Basic) ou Métodos de extensão (guia de programação de C#).
ExceçãoCondição
ArgumentNullException

sourceor selector é null.

Esse método retorna zero se source contém sem elementos.

Você pode aplicar esse método para uma seqüência de valores arbitrários, se você fornecer uma função, selector, que projetos que os membros do source em um tipo numérico, especificamente Double.

Em Visual Basic sintaxe de expressão de consulta um Aggregate Into Sum() cláusula resulta em uma chamada de Sum.

O exemplo de código a seguir demonstra como usar Sum<TSource>(IEnumerable<TSource>, Func<TSource, Double>) para somar os valores projetados de uma seqüência.


            class Package
            {
                public string Company { get; set; }
                public double Weight { get; set; }
            }

            public static void SumEx1()
            {
                List<Package> packages =
                    new List<Package> 
                        { new Package { Company = "Coho Vineyard", Weight = 25.2 },
                          new Package { Company = "Lucerne Publishing", Weight = 18.7 },
                          new Package { Company = "Wingtip Toys", Weight = 6.0 },
                          new Package { Company = "Adventure Works", Weight = 33.8 } };

                double totalWeight = packages.Sum(pkg => pkg.Weight);

                Console.WriteLine("The total weight of the packages is: {0}", totalWeight);
            }

            /*
             This code produces the following output:

             The total weight of the packages is: 83.7
            */



.NET Framework

Com suporte em: 4, 3.5

.NET Framework Client Profile

Com suporte em: 4, 3.5 SP1

Windows 7, Windows Vista SP1 ou posterior, Windows XP SP3, Windows Server 2008 (Server Core não compatível), Windows Server 2008 R2 (Server Core não compatível com SP1 ou posterior), Windows Server 2003 SP2

O .NET Framework não oferece suporte a todas as versões de cada plataforma. Para obter uma lista das versões com suporte, consulte Requisitos de sistema do .NET Framework.
Isso foi útil para você?
(1500 caracteres restantes)

Contribuições da comunidade

ADICIONAR
© 2013 Microsoft. Todos os direitos reservados.