Leer en inglés

Compartir a través de


Enumerable.Sum Método

Definición

Calcula la suma de una secuencia de valores numéricos.

Sobrecargas

Sum(IEnumerable<Single>)

Calcula la suma de una secuencia de valores Single.

Sum(IEnumerable<Nullable<Int32>>)

Calcula la suma de una secuencia de valores Int32 que aceptan valores NULL.

Sum(IEnumerable<Nullable<Single>>)

Calcula la suma de una secuencia de valores Single que aceptan valores NULL.

Sum(IEnumerable<Nullable<Int64>>)

Calcula la suma de una secuencia de valores Int64 que aceptan valores NULL.

Sum(IEnumerable<Nullable<Double>>)

Calcula la suma de una secuencia de valores Double que aceptan valores NULL.

Sum(IEnumerable<Int32>)

Calcula la suma de una secuencia de valores Int32.

Sum(IEnumerable<Int64>)

Calcula la suma de una secuencia de valores Int64.

Sum(IEnumerable<Double>)

Calcula la suma de una secuencia de valores Double.

Sum(IEnumerable<Decimal>)

Calcula la suma de una secuencia de valores Decimal.

Sum(IEnumerable<Nullable<Decimal>>)

Calcula la suma de una secuencia de valores Decimal que aceptan valores NULL.

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

Calcula la suma de una secuencia de valores Single que se obtiene al invocar una función de transformación en cada elemento de la secuencia de entrada.

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

Calcula la suma de una secuencia de valores Int64 que aceptan valores NULL que se obtiene al invocar una función de transformación en cada elemento de la secuencia de entrada.

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

Calcula la suma de una secuencia de valores Int32 que aceptan valores NULL que se obtiene al invocar una función de transformación en cada elemento de la secuencia de entrada.

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

Calcula la suma de una secuencia de valores Double que aceptan valores NULL que se obtiene al invocar una función de transformación en cada elemento de la secuencia de entrada.

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

Calcula la suma de una secuencia de valores Single que aceptan valores NULL que se obtiene al invocar una función de transformación en cada elemento de la secuencia de entrada.

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

Calcula la suma de una secuencia de valores Int64 que se obtiene al invocar una función de transformación en cada elemento de la secuencia de entrada.

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

Calcula la suma de una secuencia de valores Int32 que se obtiene al invocar una función de transformación en cada elemento de la secuencia de entrada.

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

Calcula la suma de una secuencia de valores Double que se obtiene al invocar una función de transformación en cada elemento de la secuencia de entrada.

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

Calcula la suma de una secuencia de valores Decimal que se obtiene al invocar una función de transformación en cada elemento de la secuencia de entrada.

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

Calcula la suma de una secuencia de valores Decimal que aceptan valores NULL que se obtiene al invocar una función de transformación en cada elemento de la secuencia de entrada.

Sum(IEnumerable<Single>)

Source:
Sum.cs
Source:
Sum.cs
Source:
Sum.cs

Calcula la suma de una secuencia de valores Single.

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

Parámetros

source
IEnumerable<Single>

Secuencia de valores Single cuya suma se va a calcular.

Devoluciones

Suma de los valores de la secuencia.

Excepciones

source es null.

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar Sum(IEnumerable<Single>) para sumar los valores de una secuencia.

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.
*/

Comentarios

Este método devuelve cero si source no contiene ningún elemento.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Sum() cláusula se traduce en una invocación de Sum.

Consulte también

Se aplica a

.NET 9 y otras versiones
Producto Versiones
.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>>)

Source:
Sum.cs
Source:
Sum.cs
Source:
Sum.cs

Calcula la suma de una secuencia de valores Int32 que aceptan valores NULL.

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

Parámetros

source
IEnumerable<Nullable<Int32>>

Secuencia de valores Int32 que aceptan valores NULL cuya suma se va a calcular.

Devoluciones

Suma de los valores de la secuencia.

Excepciones

source es null.

La suma es mayor que Int32.MaxValue.

Comentarios

Los elementos de source que se excluyen null del cálculo de la suma. Este método devuelve cero si source no contiene ningún elemento o todos los elementos son null.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Sum() cláusula se traduce en una invocación de Sum.

Consulte también

Se aplica a

.NET 9 y otras versiones
Producto Versiones
.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>>)

Source:
Sum.cs
Source:
Sum.cs
Source:
Sum.cs

Calcula la suma de una secuencia de valores Single que aceptan valores NULL.

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

Parámetros

source
IEnumerable<Nullable<Single>>

Secuencia de valores Single que aceptan valores NULL cuya suma se va a calcular.

Devoluciones

Suma de los valores de la secuencia.

Excepciones

source es null.

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar Sum(IEnumerable<Nullable<Single>>) para sumar los valores de una secuencia.

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

Comentarios

Los elementos de source que se excluyen null del cálculo de la suma. Este método devuelve cero si source no contiene ningún elemento o todos los elementos son null.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Sum() cláusula se traduce en una invocación de Sum.

Consulte también

Se aplica a

.NET 9 y otras versiones
Producto Versiones
.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>>)

Source:
Sum.cs
Source:
Sum.cs
Source:
Sum.cs

Calcula la suma de una secuencia de valores Int64 que aceptan valores NULL.

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

Parámetros

source
IEnumerable<Nullable<Int64>>

Secuencia de valores Int64 que aceptan valores NULL cuya suma se va a calcular.

Devoluciones

Suma de los valores de la secuencia.

Excepciones

source es null.

La suma es mayor que Int64.MaxValue.

Comentarios

Los elementos de source que se excluyen null del cálculo de la suma. Este método devuelve cero si source no contiene ningún elemento o todos los elementos son null.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Sum() cláusula se traduce en una invocación de Sum.

Consulte también

Se aplica a

.NET 9 y otras versiones
Producto Versiones
.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>>)

Source:
Sum.cs
Source:
Sum.cs
Source:
Sum.cs

Calcula la suma de una secuencia de valores Double que aceptan valores NULL.

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

Parámetros

source
IEnumerable<Nullable<Double>>

Secuencia de valores Double que aceptan valores NULL cuya suma se va a calcular.

Devoluciones

Suma de los valores de la secuencia.

Excepciones

source es null.

La suma es mayor que Double.MaxValue.

Comentarios

Los elementos de source que se excluyen null del cálculo de la suma. Este método devuelve cero si source no contiene ningún elemento o todos los elementos son null.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Sum() cláusula se traduce en una invocación de Sum.

Consulte también

Se aplica a

.NET 9 y otras versiones
Producto Versiones
.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>)

Source:
Sum.cs
Source:
Sum.cs
Source:
Sum.cs

Calcula la suma de una secuencia de valores Int32.

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

Parámetros

source
IEnumerable<Int32>

Secuencia de valores Int32 cuya suma se va a calcular.

Devoluciones

Suma de los valores de la secuencia.

Excepciones

source es null.

La suma es mayor que Int32.MaxValue.

Comentarios

Este método devuelve cero si source no contiene ningún elemento.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Sum() cláusula se traduce en una invocación de Sum.

Consulte también

Se aplica a

.NET 9 y otras versiones
Producto Versiones
.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>)

Source:
Sum.cs
Source:
Sum.cs
Source:
Sum.cs

Calcula la suma de una secuencia de valores Int64.

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

Parámetros

source
IEnumerable<Int64>

Secuencia de valores Int64 cuya suma se va a calcular.

Devoluciones

Suma de los valores de la secuencia.

Excepciones

source es null.

La suma es mayor que Int64.MaxValue.

Comentarios

Este método devuelve cero si source no contiene ningún elemento.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Sum() cláusula se traduce en una invocación de Sum.

Consulte también

Se aplica a

.NET 9 y otras versiones
Producto Versiones
.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>)

Source:
Sum.cs
Source:
Sum.cs
Source:
Sum.cs

Calcula la suma de una secuencia de valores Double.

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

Parámetros

source
IEnumerable<Double>

Secuencia de valores Double cuya suma se va a calcular.

Devoluciones

Suma de los valores de la secuencia.

Excepciones

source es null.

La suma es mayor que Double.MaxValue.

Comentarios

Este método devuelve cero si source no contiene ningún elemento.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Sum() cláusula se traduce en una invocación de Sum.

Consulte también

Se aplica a

.NET 9 y otras versiones
Producto Versiones
.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>)

Source:
Sum.cs
Source:
Sum.cs
Source:
Sum.cs

Calcula la suma de una secuencia de valores Decimal.

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

Parámetros

source
IEnumerable<Decimal>

Secuencia de valores Decimal cuya suma se va a calcular.

Devoluciones

Suma de los valores de la secuencia.

Excepciones

source es null.

La suma es mayor que Decimal.MaxValue.

Comentarios

El Sum(IEnumerable<Decimal>) método devuelve cero si source no contiene ningún elemento.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Sum() cláusula se traduce en una invocación de Sum.

Consulte también

Se aplica a

.NET 9 y otras versiones
Producto Versiones
.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>>)

Source:
Sum.cs
Source:
Sum.cs
Source:
Sum.cs

Calcula la suma de una secuencia de valores Decimal que aceptan valores NULL.

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

Parámetros

source
IEnumerable<Nullable<Decimal>>

Secuencia de valores Decimal que aceptan valores NULL cuya suma se va a calcular.

Devoluciones

Suma de los valores de la secuencia.

Excepciones

source es null.

La suma es mayor que Decimal.MaxValue.

Comentarios

Los elementos de source que se excluyen null del cálculo de la suma. Este método devuelve cero si source no contiene ningún elemento o todos los elementos son null.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Sum() cláusula se traduce en una invocación de Sum.

Consulte también

Se aplica a

.NET 9 y otras versiones
Producto Versiones
.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>)

Source:
Sum.cs
Source:
Sum.cs
Source:
Sum.cs

Calcula la suma de una secuencia de valores Single que se obtiene al invocar una función de transformación en cada elemento de la secuencia de entrada.

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

Parámetros de tipo

TSource

Tipo de los elementos de source.

Parámetros

source
IEnumerable<TSource>

Secuencia de valores que se usan para calcular una suma.

selector
Func<TSource,Single>

Función de transformación que se va a aplicar a cada elemento.

Devoluciones

Suma de los valores proyectados.

Excepciones

source o selector es null.

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar Sum<TSource>(IEnumerable<TSource>, Func<TSource,Double>) para sumar los valores proyectados de una secuencia.

Nota

En este ejemplo de código se usa una sobrecarga del método diferente de la sobrecarga específica que describe este artículo. Para ampliar el ejemplo a la sobrecarga que describe este artículo, cambie el cuerpo de la selector función.

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

Comentarios

El Sum<TSource>(IEnumerable<TSource>, Func<TSource,Single>) método devuelve cero si source no contiene ningún elemento.

Puede aplicar este método a una secuencia de valores arbitrarios si proporciona una función, selector, que proyecta los miembros de source en un tipo numérico, específicamente Single.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Sum() cláusula se traduce en una invocación de Sum.

Consulte también

Se aplica a

.NET 9 y otras versiones
Producto Versiones
.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>>)

Source:
Sum.cs
Source:
Sum.cs
Source:
Sum.cs

Calcula la suma de una secuencia de valores Int64 que aceptan valores NULL que se obtiene al invocar una función de transformación en cada elemento de la secuencia de entrada.

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

Parámetros de tipo

TSource

Tipo de los elementos de source.

Parámetros

source
IEnumerable<TSource>

Secuencia de valores que se usan para calcular una suma.

selector
Func<TSource,Nullable<Int64>>

Función de transformación que se va a aplicar a cada elemento.

Devoluciones

Suma de los valores proyectados.

Excepciones

source o selector es null.

La suma es mayor que Int64.MaxValue.

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar Sum<TSource>(IEnumerable<TSource>, Func<TSource,Double>) para sumar los valores proyectados de una secuencia.

Nota

En este ejemplo de código se usa una sobrecarga del método diferente de la sobrecarga específica que describe este artículo. Para ampliar el ejemplo a la sobrecarga que describe este artículo, cambie el cuerpo de la selector función.

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

Comentarios

Los elementos de source que se excluyen null del cálculo de la suma. Este método devuelve cero si source no contiene ningún elemento o todos los elementos son null.

Puede aplicar este método a una secuencia de valores arbitrarios si proporciona una función, selector, que proyecta los miembros de source en un tipo numérico, específicamente Nullable<Int64> en C# o Nullable(Of Int64) en Visual Basic.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Sum() cláusula se traduce en una invocación de Sum.

Consulte también

Se aplica a

.NET 9 y otras versiones
Producto Versiones
.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>>)

Source:
Sum.cs
Source:
Sum.cs
Source:
Sum.cs

Calcula la suma de una secuencia de valores Int32 que aceptan valores NULL que se obtiene al invocar una función de transformación en cada elemento de la secuencia de entrada.

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

Parámetros de tipo

TSource

Tipo de los elementos de source.

Parámetros

source
IEnumerable<TSource>

Secuencia de valores que se usan para calcular una suma.

selector
Func<TSource,Nullable<Int32>>

Función de transformación que se va a aplicar a cada elemento.

Devoluciones

Suma de los valores proyectados.

Excepciones

source o selector es null.

La suma es mayor que Int32.MaxValue.

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar Sum<TSource>(IEnumerable<TSource>, Func<TSource,Double>) para sumar los valores proyectados de una secuencia.

Nota

En este ejemplo de código se usa una sobrecarga del método diferente de la sobrecarga específica que describe este artículo. Para ampliar el ejemplo a la sobrecarga que describe este artículo, cambie el cuerpo de la selector función.

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

Comentarios

Los elementos de source que se excluyen null del cálculo de la suma. Este método devuelve cero si source no contiene ningún elemento o todos los elementos son null.

Puede aplicar este método a una secuencia de valores arbitrarios si proporciona una función, selector, que proyecta los miembros de source en un tipo numérico, específicamente Nullable<Int32> en C# o Nullable(Of Int32) en Visual Basic.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Sum() cláusula se traduce en una invocación de Sum.

Consulte también

Se aplica a

.NET 9 y otras versiones
Producto Versiones
.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>>)

Source:
Sum.cs
Source:
Sum.cs
Source:
Sum.cs

Calcula la suma de una secuencia de valores Double que aceptan valores NULL que se obtiene al invocar una función de transformación en cada elemento de la secuencia de entrada.

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

Parámetros de tipo

TSource

Tipo de los elementos de source.

Parámetros

source
IEnumerable<TSource>

Secuencia de valores que se usan para calcular una suma.

selector
Func<TSource,Nullable<Double>>

Función de transformación que se va a aplicar a cada elemento.

Devoluciones

Suma de los valores proyectados.

Excepciones

source o selector es null.

La suma es mayor que Double.MaxValue.

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar Sum<TSource>(IEnumerable<TSource>, Func<TSource,Double>) para sumar los valores proyectados de una secuencia.

Nota

En este ejemplo de código se usa una sobrecarga del método diferente de la sobrecarga específica que describe este artículo. Para ampliar el ejemplo a la sobrecarga que describe este artículo, cambie el cuerpo de la selector función.

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

Comentarios

Los elementos de source que se excluyen null del cálculo de la suma. Este método devuelve cero si source no contiene ningún elemento o todos los elementos son null.

Puede aplicar este método a una secuencia de valores arbitrarios si proporciona una función, selector, que proyecta los miembros de source en un tipo numérico, específicamente Nullable<Double> en C# o Nullable(Of Double) en Visual Basic.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Sum() cláusula se traduce en una invocación de Sum.

Consulte también

Se aplica a

.NET 9 y otras versiones
Producto Versiones
.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>>)

Source:
Sum.cs
Source:
Sum.cs
Source:
Sum.cs

Calcula la suma de una secuencia de valores Single que aceptan valores NULL que se obtiene al invocar una función de transformación en cada elemento de la secuencia de entrada.

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

Parámetros de tipo

TSource

Tipo de los elementos de source.

Parámetros

source
IEnumerable<TSource>

Secuencia de valores que se usan para calcular una suma.

selector
Func<TSource,Nullable<Single>>

Función de transformación que se va a aplicar a cada elemento.

Devoluciones

Suma de los valores proyectados.

Excepciones

source o selector es null.

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar Sum<TSource>(IEnumerable<TSource>, Func<TSource,Double>) para sumar los valores proyectados de una secuencia.

Nota

En este ejemplo de código se usa una sobrecarga del método diferente de la sobrecarga específica que describe este artículo. Para ampliar el ejemplo a la sobrecarga que describe este artículo, cambie el cuerpo de la selector función.

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

Comentarios

Los elementos de source que se excluyen null del cálculo de la suma. Este método devuelve cero si source no contiene ningún elemento o todos los elementos son null.

Puede aplicar este método a una secuencia de valores arbitrarios si proporciona una función, selector, que proyecta los miembros de source en un tipo numérico, específicamente Nullable<Single> en C# o Nullable(Of Single) en Visual Basic.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Sum() cláusula se traduce en una invocación de Sum.

Consulte también

Se aplica a

.NET 9 y otras versiones
Producto Versiones
.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>)

Source:
Sum.cs
Source:
Sum.cs
Source:
Sum.cs

Calcula la suma de una secuencia de valores Int64 que se obtiene al invocar una función de transformación en cada elemento de la secuencia de entrada.

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

Parámetros de tipo

TSource

Tipo de los elementos de source.

Parámetros

source
IEnumerable<TSource>

Secuencia de valores que se usan para calcular una suma.

selector
Func<TSource,Int64>

Función de transformación que se va a aplicar a cada elemento.

Devoluciones

Suma de los valores proyectados.

Excepciones

source o selector es null.

La suma es mayor que Int64.MaxValue.

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar Sum<TSource>(IEnumerable<TSource>, Func<TSource,Double>) para sumar los valores proyectados de una secuencia.

Nota

En este ejemplo de código se usa una sobrecarga del método que es diferente de la sobrecarga específica que se describe en este artículo. Para ampliar el ejemplo a la sobrecarga que describe este artículo, cambie el cuerpo de la selector función.

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

Comentarios

Este método devuelve cero si source no contiene ningún elemento.

Puede aplicar este método a una secuencia de valores arbitrarios si proporciona una función, selector, que proyecta los miembros de source en un tipo numérico, específicamente Int64.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Sum() cláusula se traduce en una invocación de Sum.

Consulte también

Se aplica a

.NET 9 y otras versiones
Producto Versiones
.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>)

Source:
Sum.cs
Source:
Sum.cs
Source:
Sum.cs

Calcula la suma de una secuencia de valores Int32 que se obtiene al invocar una función de transformación en cada elemento de la secuencia de entrada.

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

Parámetros de tipo

TSource

Tipo de los elementos de source.

Parámetros

source
IEnumerable<TSource>

Secuencia de valores que se usan para calcular una suma.

selector
Func<TSource,Int32>

Función de transformación que se va a aplicar a cada elemento.

Devoluciones

Suma de los valores proyectados.

Excepciones

source o selector es null.

La suma es mayor que Int32.MaxValue.

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar Sum<TSource>(IEnumerable<TSource>, Func<TSource,Double>) para sumar los valores proyectados de una secuencia.

Nota

En este ejemplo de código se usa una sobrecarga del método que es diferente de la sobrecarga específica que se describe en este artículo. Para ampliar el ejemplo a la sobrecarga que describe este artículo, cambie el cuerpo de la selector función.

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

Comentarios

Este método devuelve cero si source no contiene ningún elemento.

Puede aplicar este método a una secuencia de valores arbitrarios si proporciona una función, selector, que proyecta los miembros de source en un tipo numérico, específicamente Int32.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Sum() cláusula se traduce en una invocación de Sum.

Consulte también

Se aplica a

.NET 9 y otras versiones
Producto Versiones
.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>)

Source:
Sum.cs
Source:
Sum.cs
Source:
Sum.cs

Calcula la suma de una secuencia de valores Double que se obtiene al invocar una función de transformación en cada elemento de la secuencia de entrada.

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

Parámetros de tipo

TSource

Tipo de los elementos de source.

Parámetros

source
IEnumerable<TSource>

Secuencia de valores que se usan para calcular una suma.

selector
Func<TSource,Double>

Función de transformación que se va a aplicar a cada elemento.

Devoluciones

Suma de los valores proyectados.

Excepciones

source o selector es null.

La suma es mayor que Double.MaxValue.

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar Sum<TSource>(IEnumerable<TSource>, Func<TSource,Double>) para sumar los valores proyectados de una secuencia.

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

Comentarios

Este método devuelve cero si source no contiene ningún elemento.

Puede aplicar este método a una secuencia de valores arbitrarios si proporciona una función, selector, que proyecta los miembros de source en un tipo numérico, específicamente Double.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Sum() cláusula se traduce en una invocación de Sum.

Consulte también

Se aplica a

.NET 9 y otras versiones
Producto Versiones
.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>)

Source:
Sum.cs
Source:
Sum.cs
Source:
Sum.cs

Calcula la suma de una secuencia de valores Decimal que se obtiene al invocar una función de transformación en cada elemento de la secuencia de entrada.

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

Parámetros de tipo

TSource

Tipo de los elementos de source.

Parámetros

source
IEnumerable<TSource>

Secuencia de valores que se usan para calcular una suma.

selector
Func<TSource,Decimal>

Función de transformación que se va a aplicar a cada elemento.

Devoluciones

Suma de los valores proyectados.

Excepciones

source o selector es null.

La suma es mayor que Decimal.MaxValue.

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar Sum<TSource>(IEnumerable<TSource>, Func<TSource,Double>) para sumar los valores proyectados de una secuencia.

Nota

En este ejemplo de código se usa una sobrecarga del método que es diferente de la sobrecarga específica que se describe en este artículo. Para ampliar el ejemplo a la sobrecarga que describe este artículo, cambie el cuerpo de la selector función.

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

Comentarios

Este método devuelve cero si source no contiene ningún elemento.

Puede aplicar este método a una secuencia de valores arbitrarios si proporciona una función, selector, que proyecta los miembros de source en un tipo numérico, específicamente Decimal.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Sum() cláusula se traduce en una invocación de Sum.

Consulte también

Se aplica a

.NET 9 y otras versiones
Producto Versiones
.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>>)

Source:
Sum.cs
Source:
Sum.cs
Source:
Sum.cs

Calcula la suma de una secuencia de valores Decimal que aceptan valores NULL que se obtiene al invocar una función de transformación en cada elemento de la secuencia de entrada.

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

Parámetros de tipo

TSource

Tipo de los elementos de source.

Parámetros

source
IEnumerable<TSource>

Secuencia de valores que se usan para calcular una suma.

selector
Func<TSource,Nullable<Decimal>>

Función de transformación que se va a aplicar a cada elemento.

Devoluciones

Suma de los valores proyectados.

Excepciones

source o selector es null.

La suma es mayor que Decimal.MaxValue.

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar Sum<TSource>(IEnumerable<TSource>, Func<TSource,Double>) para sumar los valores proyectados de una secuencia.

Nota

En este ejemplo de código se usa una sobrecarga del método que es diferente de la sobrecarga específica que se describe en este artículo. Para ampliar el ejemplo a la sobrecarga que describe este artículo, cambie el cuerpo de la selector función.

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

Comentarios

Los elementos de source que se excluyen null del cálculo de la suma. Este método devuelve cero si source no contiene ningún elemento o todos los elementos son null.

Puede aplicar este método a una secuencia de valores arbitrarios si proporciona una función, selector, que proyecta los miembros de source en un tipo numérico, específicamente Nullable<Decimal> en C# o Nullable(Of Decimal) en Visual Basic.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Sum() cláusula se traduce en una invocación de Sum.

Consulte también

Se aplica a

.NET 9 y otras versiones
Producto Versiones
.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