Ler em inglês

Compartilhar via


Enumerable.Sum Método

Definição

Computa a soma de uma sequência de valores numéricos.

Sobrecargas

Sum(IEnumerable<Single>)

Calcula a soma de uma sequência de valores Single.

Sum(IEnumerable<Nullable<Int32>>)

Computa a soma de uma sequência de valores Int32 que permitem valores nulos.

Sum(IEnumerable<Nullable<Single>>)

Computa a soma de uma sequência de valores Single que permitem valores nulos.

Sum(IEnumerable<Nullable<Int64>>)

Computa a soma de uma sequência de valores Int64 que permitem valores nulos.

Sum(IEnumerable<Nullable<Double>>)

Computa a soma de uma sequência de valores Double que permitem valores nulos.

Sum(IEnumerable<Int32>)

Calcula a soma de uma sequência de valores Int32.

Sum(IEnumerable<Int64>)

Calcula a soma de uma sequência de valores Int64.

Sum(IEnumerable<Double>)

Calcula a soma de uma sequência de valores Double.

Sum(IEnumerable<Decimal>)

Calcula a soma de uma sequência de valores Decimal.

Sum(IEnumerable<Nullable<Decimal>>)

Computa a soma de uma sequência de valores Decimal que permitem valores nulos.

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Single>)

Calcula a soma da sequência de valores Single obtidos pela invocação de uma função de transformação em cada elemento da sequência de entrada.

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>)

Calcula a soma da sequência de valores Int64 anuláveis obtidos pela invocação de uma função de transformação em cada elemento da sequência de entrada.

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>)

Calcula a soma da sequência de valores Int32 anuláveis obtidos pela invocação de uma função de transformação em cada elemento da sequência de entrada.

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>)

Calcula a soma da sequência de valores Double anuláveis obtidos pela invocação de uma função de transformação em cada elemento da sequência de entrada.

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>)

Calcula a soma da sequência de valores Single anuláveis obtidos pela invocação de uma função de transformação em cada elemento da sequência de entrada.

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Int64>)

Calcula a soma da sequência de valores Int64 obtidos pela invocação de uma função de transformação em cada elemento da sequência de entrada.

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Int32>)

Calcula a soma da sequência de valores Int32 obtidos pela invocação de uma função de transformação em cada elemento da sequência de entrada.

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Double>)

Calcula a soma da sequência de valores Double obtidos pela invocação de uma função de transformação em cada elemento da sequência de entrada.

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>)

Calcula a soma da sequência de valores Decimal obtidos pela invocação de uma função de transformação em cada elemento da sequência de entrada.

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>)

Calcula a soma da sequência de valores Decimal anuláveis obtidos pela invocação de uma função de transformação em cada elemento da sequência de entrada.

Sum(IEnumerable<Single>)

Origem:
Sum.cs
Origem:
Sum.cs
Origem:
Sum.cs

Calcula a soma de uma sequência de valores Single.

C#
public static float Sum (this System.Collections.Generic.IEnumerable<float> source);

Parâmetros

source
IEnumerable<Single>

Uma sequência de valores Single para cálculo da soma.

Retornos

A soma dos valores na sequência.

Exceções

source é null.

Exemplos

O exemplo de código a seguir demonstra como usar Sum(IEnumerable<Single>) para somar os valores de uma sequência.

C#
List<float> numbers = new List<float> { 43.68F, 1.25F, 583.7F, 6.5F };

float sum = numbers.Sum();

Console.WriteLine("The sum of the numbers is {0}.", sum);

/*
 This code produces the following output:

 The sum of the numbers is 635.13.
*/

Comentários

Esse método retornará zero se source não contiver elementos.

Na sintaxe da expressão de consulta do Visual Basic, uma Aggregate Into Sum() cláusula é convertida em uma invocação de Sum.

Confira também

Aplica-se a

.NET 9 e outras versões
Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Sum(IEnumerable<Nullable<Int32>>)

Origem:
Sum.cs
Origem:
Sum.cs
Origem:
Sum.cs

Computa a soma de uma sequência de valores Int32 que permitem valores nulos.

C#
public static int? Sum (this System.Collections.Generic.IEnumerable<int?> source);

Parâmetros

source
IEnumerable<Nullable<Int32>>

Uma sequência de valores Int32 que permitem valores nulos para cálculo da soma.

Retornos

A soma dos valores na sequência.

Exceções

source é null.

A soma é maior que Int32.MaxValue.

Comentários

Os itens em source que são null excluídos da computação da soma. Esse método retornará zero se source não contiver elementos ou todos os elementos forem null.

Na sintaxe da expressão de consulta do Visual Basic, uma Aggregate Into Sum() cláusula é convertida em uma invocação de Sum.

Confira também

Aplica-se a

.NET 9 e outras versões
Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Sum(IEnumerable<Nullable<Single>>)

Origem:
Sum.cs
Origem:
Sum.cs
Origem:
Sum.cs

Computa a soma de uma sequência de valores Single que permitem valores nulos.

C#
public static float? Sum (this System.Collections.Generic.IEnumerable<float?> source);

Parâmetros

source
IEnumerable<Nullable<Single>>

Uma sequência de valores Single que permitem valores nulos para cálculo da soma.

Retornos

A soma dos valores na sequência.

Exceções

source é null.

Exemplos

O exemplo de código a seguir demonstra como usar Sum(IEnumerable<Nullable<Single>>) para somar os valores de uma sequência.

C#
float?[] points = { null, 0, 92.83F, null, 100.0F, 37.46F, 81.1F };

float? sum = points.Sum();

Console.WriteLine("Total points earned: {0}", sum);

/*
 This code produces the following output:

 Total points earned: 311.39
*/

Comentários

Os itens em source que são null excluídos da computação da soma. Esse método retornará zero se source não contiver elementos ou todos os elementos forem null.

Na sintaxe da expressão de consulta do Visual Basic, uma Aggregate Into Sum() cláusula é convertida em uma invocação de Sum.

Confira também

Aplica-se a

.NET 9 e outras versões
Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Sum(IEnumerable<Nullable<Int64>>)

Origem:
Sum.cs
Origem:
Sum.cs
Origem:
Sum.cs

Computa a soma de uma sequência de valores Int64 que permitem valores nulos.

C#
public static long? Sum (this System.Collections.Generic.IEnumerable<long?> source);

Parâmetros

source
IEnumerable<Nullable<Int64>>

Uma sequência de valores Int64 que permitem valores nulos para cálculo da soma.

Retornos

A soma dos valores na sequência.

Exceções

source é null.

A soma é maior que Int64.MaxValue.

Comentários

Os itens em source que são null excluídos da computação da soma. Esse método retornará zero se source não contiver elementos ou todos os elementos forem null.

Na sintaxe da expressão de consulta do Visual Basic, uma Aggregate Into Sum() cláusula é convertida em uma invocação de Sum.

Confira também

Aplica-se a

.NET 9 e outras versões
Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Sum(IEnumerable<Nullable<Double>>)

Origem:
Sum.cs
Origem:
Sum.cs
Origem:
Sum.cs

Computa a soma de uma sequência de valores Double que permitem valores nulos.

C#
public static double? Sum (this System.Collections.Generic.IEnumerable<double?> source);

Parâmetros

source
IEnumerable<Nullable<Double>>

Uma sequência de valores Double que permitem valores nulos para cálculo da soma.

Retornos

A soma dos valores na sequência.

Exceções

source é null.

A soma é maior que Double.MaxValue.

Comentários

Os itens em source que são null excluídos da computação da soma. Esse método retornará zero se source não contiver elementos ou todos os elementos forem null.

Na sintaxe da expressão de consulta do Visual Basic, uma Aggregate Into Sum() cláusula é convertida em uma invocação de Sum.

Confira também

Aplica-se a

.NET 9 e outras versões
Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Sum(IEnumerable<Int32>)

Origem:
Sum.cs
Origem:
Sum.cs
Origem:
Sum.cs

Calcula a soma de uma sequência de valores Int32.

C#
public static int Sum (this System.Collections.Generic.IEnumerable<int> source);

Parâmetros

source
IEnumerable<Int32>

Uma sequência de valores Int32 para cálculo da soma.

Retornos

A soma dos valores na sequência.

Exceções

source é null.

A soma é maior que Int32.MaxValue.

Comentários

Esse método retornará zero se source não contiver elementos.

Na sintaxe da expressão de consulta do Visual Basic, uma Aggregate Into Sum() cláusula é convertida em uma invocação de Sum.

Confira também

Aplica-se a

.NET 9 e outras versões
Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Sum(IEnumerable<Int64>)

Origem:
Sum.cs
Origem:
Sum.cs
Origem:
Sum.cs

Calcula a soma de uma sequência de valores Int64.

C#
public static long Sum (this System.Collections.Generic.IEnumerable<long> source);

Parâmetros

source
IEnumerable<Int64>

Uma sequência de valores Int64 para cálculo da soma.

Retornos

A soma dos valores na sequência.

Exceções

source é null.

A soma é maior que Int64.MaxValue.

Comentários

Esse método retornará zero se source não contiver elementos.

Na sintaxe da expressão de consulta do Visual Basic, uma Aggregate Into Sum() cláusula é convertida em uma invocação de Sum.

Confira também

Aplica-se a

.NET 9 e outras versões
Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Sum(IEnumerable<Double>)

Origem:
Sum.cs
Origem:
Sum.cs
Origem:
Sum.cs

Calcula a soma de uma sequência de valores Double.

C#
public static double Sum (this System.Collections.Generic.IEnumerable<double> source);

Parâmetros

source
IEnumerable<Double>

Uma sequência de valores Double para cálculo da soma.

Retornos

A soma dos valores na sequência.

Exceções

source é null.

A soma é maior que Double.MaxValue.

Comentários

Esse método retornará zero se source não contiver elementos.

Na sintaxe da expressão de consulta do Visual Basic, uma Aggregate Into Sum() cláusula é convertida em uma invocação de Sum.

Confira também

Aplica-se a

.NET 9 e outras versões
Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Sum(IEnumerable<Decimal>)

Origem:
Sum.cs
Origem:
Sum.cs
Origem:
Sum.cs

Calcula a soma de uma sequência de valores Decimal.

C#
public static decimal Sum (this System.Collections.Generic.IEnumerable<decimal> source);

Parâmetros

source
IEnumerable<Decimal>

Uma sequência de valores Decimal para cálculo da soma.

Retornos

A soma dos valores na sequência.

Exceções

source é null.

A soma é maior que Decimal.MaxValue.

Comentários

O Sum(IEnumerable<Decimal>) método retornará zero se source não contiver elementos.

Na sintaxe da expressão de consulta do Visual Basic, uma Aggregate Into Sum() cláusula é convertida em uma invocação de Sum.

Confira também

Aplica-se a

.NET 9 e outras versões
Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Sum(IEnumerable<Nullable<Decimal>>)

Origem:
Sum.cs
Origem:
Sum.cs
Origem:
Sum.cs

Computa a soma de uma sequência de valores Decimal que permitem valores nulos.

C#
public static decimal? Sum (this System.Collections.Generic.IEnumerable<decimal?> source);

Parâmetros

source
IEnumerable<Nullable<Decimal>>

Uma sequência de valores Decimal que permitem valores nulos para cálculo da soma.

Retornos

A soma dos valores na sequência.

Exceções

source é null.

A soma é maior que Decimal.MaxValue.

Comentários

Os itens em source que são null excluídos da computação da soma. Esse método retornará zero se source não contiver elementos ou todos os elementos forem null.

Na sintaxe da expressão de consulta do Visual Basic, uma Aggregate Into Sum() cláusula é convertida em uma invocação de Sum.

Confira também

Aplica-se a

.NET 9 e outras versões
Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Single>)

Origem:
Sum.cs
Origem:
Sum.cs
Origem:
Sum.cs

Calcula a soma da sequência de valores Single obtidos pela invocação de uma função de transformação em cada elemento da sequência de entrada.

C#
public static float Sum<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,float> selector);

Parâmetros de tipo

TSource

O tipo dos elementos de source.

Parâmetros

source
IEnumerable<TSource>

Uma sequência de valores usados para calcular uma soma.

selector
Func<TSource,Single>

Uma função de transformação a ser aplicada a cada elemento.

Retornos

A soma dos valores projetados.

Exceções

source ou selector é null.

Exemplos

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

Observação

Este exemplo de código usa uma sobrecarga do método que é diferente da sobrecarga específica que este artigo descreve. Para estender o exemplo para a sobrecarga que este artigo descreve, altere o corpo da selector função.

C#
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
*/

Comentários

O Sum<TSource>(IEnumerable<TSource>, Func<TSource,Single>) método retornará zero se source não contiver elementos.

Você pode aplicar esse método a uma sequência de valores arbitrários se fornecer uma função, selector, que projeta os membros de source em um tipo numérico, especificamente Single.

Na sintaxe da expressão de consulta do Visual Basic, uma Aggregate Into Sum() cláusula é convertida em uma invocação de Sum.

Confira também

Aplica-se a

.NET 9 e outras versões
Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>)

Origem:
Sum.cs
Origem:
Sum.cs
Origem:
Sum.cs

Calcula a soma da sequência de valores Int64 anuláveis obtidos pela invocação de uma função de transformação em cada elemento da sequência de entrada.

C#
public static long? Sum<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,long?> selector);

Parâmetros de tipo

TSource

O tipo dos elementos de source.

Parâmetros

source
IEnumerable<TSource>

Uma sequência de valores usados para calcular uma soma.

selector
Func<TSource,Nullable<Int64>>

Uma função de transformação a ser aplicada a cada elemento.

Retornos

A soma dos valores projetados.

Exceções

source ou selector é null.

A soma é maior que Int64.MaxValue.

Exemplos

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

Observação

Este exemplo de código usa uma sobrecarga do método que é diferente da sobrecarga específica que este artigo descreve. Para estender o exemplo para a sobrecarga que este artigo descreve, altere o corpo da selector função.

C#
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
*/

Comentários

Os itens em source que são null excluídos da computação da soma. Esse método retornará zero se source não contiver elementos ou todos os elementos forem null.

Você pode aplicar esse método a uma sequência de valores arbitrários se fornecer uma função, selector, que projeta os membros de source em um tipo numérico, especificamente Nullable<Int64> em C# ou Nullable(Of Int64) no Visual Basic

Na sintaxe da expressão de consulta do Visual Basic, uma Aggregate Into Sum() cláusula é convertida em uma invocação de Sum.

Confira também

Aplica-se a

.NET 9 e outras versões
Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>)

Origem:
Sum.cs
Origem:
Sum.cs
Origem:
Sum.cs

Calcula a soma da sequência de valores Int32 anuláveis obtidos pela invocação de uma função de transformação em cada elemento da sequência de entrada.

C#
public static int? Sum<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,int?> selector);

Parâmetros de tipo

TSource

O tipo dos elementos de source.

Parâmetros

source
IEnumerable<TSource>

Uma sequência de valores usados para calcular uma soma.

selector
Func<TSource,Nullable<Int32>>

Uma função de transformação a ser aplicada a cada elemento.

Retornos

A soma dos valores projetados.

Exceções

source ou selector é null.

A soma é maior que Int32.MaxValue.

Exemplos

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

Observação

Este exemplo de código usa uma sobrecarga do método que é diferente da sobrecarga específica que este artigo descreve. Para estender o exemplo para a sobrecarga que este artigo descreve, altere o corpo da selector função.

C#
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
*/

Comentários

Os itens em source que são null excluídos da computação da soma. Esse método retornará zero se source não contiver elementos ou todos os elementos forem null.

Você pode aplicar esse método a uma sequência de valores arbitrários se fornecer uma função, selector, que projeta os membros de source em um tipo numérico, especificamente Nullable<Int32> em C# ou Nullable(Of Int32) no Visual Basic.

Na sintaxe da expressão de consulta do Visual Basic, uma Aggregate Into Sum() cláusula é convertida em uma invocação de Sum.

Confira também

Aplica-se a

.NET 9 e outras versões
Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>)

Origem:
Sum.cs
Origem:
Sum.cs
Origem:
Sum.cs

Calcula a soma da sequência de valores Double anuláveis obtidos pela invocação de uma função de transformação em cada elemento da sequência de entrada.

C#
public static double? Sum<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,double?> selector);

Parâmetros de tipo

TSource

O tipo dos elementos de source.

Parâmetros

source
IEnumerable<TSource>

Uma sequência de valores usados para calcular uma soma.

selector
Func<TSource,Nullable<Double>>

Uma função de transformação a ser aplicada a cada elemento.

Retornos

A soma dos valores projetados.

Exceções

source ou selector é null.

A soma é maior que Double.MaxValue.

Exemplos

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

Observação

Este exemplo de código usa uma sobrecarga do método que é diferente da sobrecarga específica que este artigo descreve. Para estender o exemplo para a sobrecarga que este artigo descreve, altere o corpo da selector função.

C#
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
*/

Comentários

Os itens em source que são null excluídos da computação da soma. Esse método retornará zero se source não contiver elementos ou todos os elementos forem null.

Você pode aplicar esse método a uma sequência de valores arbitrários se fornecer uma função, selector, que projeta os membros de source em um tipo numérico, especificamente Nullable<Double> em C# ou Nullable(Of Double) no Visual Basic.

Na sintaxe da expressão de consulta do Visual Basic, uma Aggregate Into Sum() cláusula é convertida em uma invocação de Sum.

Confira também

Aplica-se a

.NET 9 e outras versões
Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>)

Origem:
Sum.cs
Origem:
Sum.cs
Origem:
Sum.cs

Calcula a soma da sequência de valores Single anuláveis obtidos pela invocação de uma função de transformação em cada elemento da sequência de entrada.

C#
public static float? Sum<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,float?> selector);

Parâmetros de tipo

TSource

O tipo dos elementos de source.

Parâmetros

source
IEnumerable<TSource>

Uma sequência de valores usados para calcular uma soma.

selector
Func<TSource,Nullable<Single>>

Uma função de transformação a ser aplicada a cada elemento.

Retornos

A soma dos valores projetados.

Exceções

source ou selector é null.

Exemplos

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

Observação

Este exemplo de código usa uma sobrecarga do método que é diferente da sobrecarga específica que este artigo descreve. Para estender o exemplo para a sobrecarga que este artigo descreve, altere o corpo da selector função.

C#
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
*/

Comentários

Os itens em source que são null excluídos da computação da soma. Esse método retornará zero se source não contiver elementos ou todos os elementos forem null.

Você pode aplicar esse método a uma sequência de valores arbitrários se fornecer uma função, selector, que projeta os membros de source em um tipo numérico, especificamente Nullable<Single> em C# ou Nullable(Of Single) no Visual Basic.

Na sintaxe da expressão de consulta do Visual Basic, uma Aggregate Into Sum() cláusula é convertida em uma invocação de Sum.

Confira também

Aplica-se a

.NET 9 e outras versões
Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Int64>)

Origem:
Sum.cs
Origem:
Sum.cs
Origem:
Sum.cs

Calcula a soma da sequência de valores Int64 obtidos pela invocação de uma função de transformação em cada elemento da sequência de entrada.

C#
public static long Sum<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,long> selector);

Parâmetros de tipo

TSource

O tipo dos elementos de source.

Parâmetros

source
IEnumerable<TSource>

Uma sequência de valores usados para calcular uma soma.

selector
Func<TSource,Int64>

Uma função de transformação a ser aplicada a cada elemento.

Retornos

A soma dos valores projetados.

Exceções

source ou selector é null.

A soma é maior que Int64.MaxValue.

Exemplos

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

Observação

Este exemplo de código usa uma sobrecarga do método diferente da sobrecarga específica que este artigo descreve. Para estender o exemplo para a sobrecarga que este artigo descreve, altere o corpo da selector função.

C#
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
*/

Comentários

Esse método retornará zero se source não contiver elementos.

Você pode aplicar esse método a uma sequência de valores arbitrários se fornecer uma função , selector, que projeta os membros de source em um tipo numérico, especificamente Int64.

Na sintaxe da expressão de consulta do Visual Basic, uma Aggregate Into Sum() cláusula é convertida em uma invocação de Sum.

Confira também

Aplica-se a

.NET 9 e outras versões
Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Int32>)

Origem:
Sum.cs
Origem:
Sum.cs
Origem:
Sum.cs

Calcula a soma da sequência de valores Int32 obtidos pela invocação de uma função de transformação em cada elemento da sequência de entrada.

C#
public static int Sum<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,int> selector);

Parâmetros de tipo

TSource

O tipo dos elementos de source.

Parâmetros

source
IEnumerable<TSource>

Uma sequência de valores usados para calcular uma soma.

selector
Func<TSource,Int32>

Uma função de transformação a ser aplicada a cada elemento.

Retornos

A soma dos valores projetados.

Exceções

source ou selector é null.

A soma é maior que Int32.MaxValue.

Exemplos

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

Observação

Este exemplo de código usa uma sobrecarga do método diferente da sobrecarga específica que este artigo descreve. Para estender o exemplo para a sobrecarga que este artigo descreve, altere o corpo da selector função.

C#
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
*/

Comentários

Esse método retornará zero se source não contiver elementos.

Você pode aplicar esse método a uma sequência de valores arbitrários se fornecer uma função , selector, que projeta os membros de source em um tipo numérico, especificamente Int32.

Na sintaxe da expressão de consulta do Visual Basic, uma Aggregate Into Sum() cláusula é convertida em uma invocação de Sum.

Confira também

Aplica-se a

.NET 9 e outras versões
Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Double>)

Origem:
Sum.cs
Origem:
Sum.cs
Origem:
Sum.cs

Calcula a soma da sequência de valores Double obtidos pela invocação de uma função de transformação em cada elemento da sequência de entrada.

C#
public static double Sum<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,double> selector);

Parâmetros de tipo

TSource

O tipo dos elementos de source.

Parâmetros

source
IEnumerable<TSource>

Uma sequência de valores usados para calcular uma soma.

selector
Func<TSource,Double>

Uma função de transformação a ser aplicada a cada elemento.

Retornos

A soma dos valores projetados.

Exceções

source ou selector é null.

A soma é maior que Double.MaxValue.

Exemplos

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

C#
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
*/

Comentários

Esse método retornará zero se source não contiver elementos.

Você pode aplicar esse método a uma sequência de valores arbitrários se fornecer uma função , selector, que projeta os membros de source em um tipo numérico, especificamente Double.

Na sintaxe da expressão de consulta do Visual Basic, uma Aggregate Into Sum() cláusula é convertida em uma invocação de Sum.

Confira também

Aplica-se a

.NET 9 e outras versões
Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>)

Origem:
Sum.cs
Origem:
Sum.cs
Origem:
Sum.cs

Calcula a soma da sequência de valores Decimal obtidos pela invocação de uma função de transformação em cada elemento da sequência de entrada.

C#
public static decimal Sum<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,decimal> selector);

Parâmetros de tipo

TSource

O tipo dos elementos de source.

Parâmetros

source
IEnumerable<TSource>

Uma sequência de valores usados para calcular uma soma.

selector
Func<TSource,Decimal>

Uma função de transformação a ser aplicada a cada elemento.

Retornos

A soma dos valores projetados.

Exceções

source ou selector é null.

A soma é maior que Decimal.MaxValue.

Exemplos

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

Observação

Este exemplo de código usa uma sobrecarga do método diferente da sobrecarga específica que este artigo descreve. Para estender o exemplo para a sobrecarga que este artigo descreve, altere o corpo da selector função.

C#
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
*/

Comentários

Esse método retornará zero se source não contiver elementos.

Você pode aplicar esse método a uma sequência de valores arbitrários se fornecer uma função , selector, que projeta os membros de source em um tipo numérico, especificamente Decimal.

Na sintaxe da expressão de consulta do Visual Basic, uma Aggregate Into Sum() cláusula é convertida em uma invocação de Sum.

Confira também

Aplica-se a

.NET 9 e outras versões
Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Sum<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>)

Origem:
Sum.cs
Origem:
Sum.cs
Origem:
Sum.cs

Calcula a soma da sequência de valores Decimal anuláveis obtidos pela invocação de uma função de transformação em cada elemento da sequência de entrada.

C#
public static decimal? Sum<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,decimal?> selector);

Parâmetros de tipo

TSource

O tipo dos elementos de source.

Parâmetros

source
IEnumerable<TSource>

Uma sequência de valores usados para calcular uma soma.

selector
Func<TSource,Nullable<Decimal>>

Uma função de transformação a ser aplicada a cada elemento.

Retornos

A soma dos valores projetados.

Exceções

source ou selector é null.

A soma é maior que Decimal.MaxValue.

Exemplos

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

Observação

Este exemplo de código usa uma sobrecarga do método diferente da sobrecarga específica que este artigo descreve. Para estender o exemplo para a sobrecarga que este artigo descreve, altere o corpo da selector função.

C#
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
*/

Comentários

Os itens em source que são null excluídos da computação da soma. Esse método retornará zero se source não contiver elementos ou todos os elementos forem null.

Você pode aplicar esse método a uma sequência de valores arbitrários se fornecer uma função , selectorque projeta os membros de source em um tipo numérico, especificamente Nullable<Decimal> em C# ou Nullable(Of Decimal) no Visual Basic.

Na sintaxe da expressão de consulta do Visual Basic, uma Aggregate Into Sum() cláusula é convertida em uma invocação de Sum.

Confira também

Aplica-se a

.NET 9 e outras versões
Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0