Lire en anglais

Partager via


Enumerable.Sum Méthode

Définition

Calcule la somme d'une séquence de valeurs numériques.

Surcharges

Sum(IEnumerable<Single>)

Calcule la somme d'une séquence de valeurs Single.

Sum(IEnumerable<Nullable<Int32>>)

Calcule la somme d'une séquence de valeurs Int32 nullables.

Sum(IEnumerable<Nullable<Single>>)

Calcule la somme d'une séquence de valeurs Single nullables.

Sum(IEnumerable<Nullable<Int64>>)

Calcule la somme d'une séquence de valeurs Int64 nullables.

Sum(IEnumerable<Nullable<Double>>)

Calcule la somme d'une séquence de valeurs Double nullables.

Sum(IEnumerable<Int32>)

Calcule la somme d'une séquence de valeurs Int32.

Sum(IEnumerable<Int64>)

Calcule la somme d'une séquence de valeurs Int64.

Sum(IEnumerable<Double>)

Calcule la somme d'une séquence de valeurs Double.

Sum(IEnumerable<Decimal>)

Calcule la somme d'une séquence de valeurs Decimal.

Sum(IEnumerable<Nullable<Decimal>>)

Calcule la somme d'une séquence de valeurs Decimal nullables.

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

Calcule la somme d'une séquence de valeurs Single obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée.

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

Calcule la somme d'une séquence de valeurs Int64 nullables obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée.

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

Calcule la somme d'une séquence de valeurs Int32 nullables obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée.

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

Calcule la somme d'une séquence de valeurs Double nullables obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée.

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

Calcule la somme d'une séquence de valeurs Single nullables obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée.

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

Calcule la somme d'une séquence de valeurs Int64 obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée.

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

Calcule la somme d'une séquence de valeurs Int32 obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée.

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

Calcule la somme d'une séquence de valeurs Double obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée.

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

Calcule la somme d'une séquence de valeurs Decimal obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée.

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

Calcule la somme d'une séquence de valeurs Decimal nullables obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée.

Sum(IEnumerable<Single>)

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

Calcule la somme d'une séquence de valeurs Single.

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

Paramètres

source
IEnumerable<Single>

Séquence de valeurs Single dont la somme doit être calculée.

Retours

Somme des valeurs de la séquence.

Exceptions

source a la valeur null.

Exemples

L’exemple de code suivant montre comment utiliser Sum(IEnumerable<Single>) pour additionner les valeurs d’une séquence.

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

Remarques

Cette méthode retourne zéro si source ne contient aucun élément.

Dans la syntaxe d’expression de requête Visual Basic, une Aggregate Into Sum() clause se traduit par un appel de Sum.

Voir aussi

S’applique à

.NET 9 et autres versions
Produit Versions
.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

Calcule la somme d'une séquence de valeurs Int32 nullables.

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

Paramètres

source
IEnumerable<Nullable<Int32>>

Séquence de valeurs Int32 nullables dont la somme doit être calculée.

Retours

Somme des valeurs de la séquence.

Exceptions

source a la valeur null.

La somme est supérieure à Int32.MaxValue.

Remarques

Les éléments dans source qui sont null exclus du calcul de la somme. Cette méthode retourne zéro si source ne contient aucun élément ou si tous les éléments sont null.

Dans la syntaxe d’expression de requête Visual Basic, une Aggregate Into Sum() clause se traduit par un appel de Sum.

Voir aussi

S’applique à

.NET 9 et autres versions
Produit Versions
.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

Calcule la somme d'une séquence de valeurs Single nullables.

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

Paramètres

source
IEnumerable<Nullable<Single>>

Séquence de valeurs Single nullables dont la somme doit être calculée.

Retours

Somme des valeurs de la séquence.

Exceptions

source a la valeur null.

Exemples

L’exemple de code suivant montre comment utiliser Sum(IEnumerable<Nullable<Single>>) pour additionner les valeurs d’une séquence.

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

Remarques

Les éléments dans source qui sont null exclus du calcul de la somme. Cette méthode retourne zéro si source ne contient aucun élément ou si tous les éléments sont null.

Dans la syntaxe d’expression de requête Visual Basic, une Aggregate Into Sum() clause se traduit par un appel de Sum.

Voir aussi

S’applique à

.NET 9 et autres versions
Produit Versions
.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

Calcule la somme d'une séquence de valeurs Int64 nullables.

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

Paramètres

source
IEnumerable<Nullable<Int64>>

Séquence de valeurs Int64 nullables dont la somme doit être calculée.

Retours

Somme des valeurs de la séquence.

Exceptions

source a la valeur null.

La somme est supérieure à Int64.MaxValue.

Remarques

Les éléments dans source qui sont null exclus du calcul de la somme. Cette méthode retourne zéro si source ne contient aucun élément ou si tous les éléments sont null.

Dans la syntaxe d’expression de requête Visual Basic, une Aggregate Into Sum() clause se traduit par un appel de Sum.

Voir aussi

S’applique à

.NET 9 et autres versions
Produit Versions
.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

Calcule la somme d'une séquence de valeurs Double nullables.

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

Paramètres

source
IEnumerable<Nullable<Double>>

Séquence de valeurs Double nullables dont la somme doit être calculée.

Retours

Somme des valeurs de la séquence.

Exceptions

source a la valeur null.

La somme est supérieure à Double.MaxValue.

Remarques

Les éléments dans source qui sont null exclus du calcul de la somme. Cette méthode retourne zéro si source ne contient aucun élément ou si tous les éléments sont null.

Dans la syntaxe d’expression de requête Visual Basic, une Aggregate Into Sum() clause se traduit par un appel de Sum.

Voir aussi

S’applique à

.NET 9 et autres versions
Produit Versions
.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

Calcule la somme d'une séquence de valeurs Int32.

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

Paramètres

source
IEnumerable<Int32>

Séquence de valeurs Int32 dont la somme doit être calculée.

Retours

Somme des valeurs de la séquence.

Exceptions

source a la valeur null.

La somme est supérieure à Int32.MaxValue.

Remarques

Cette méthode retourne zéro si source ne contient aucun élément.

Dans la syntaxe d’expression de requête Visual Basic, une Aggregate Into Sum() clause se traduit par un appel de Sum.

Voir aussi

S’applique à

.NET 9 et autres versions
Produit Versions
.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

Calcule la somme d'une séquence de valeurs Int64.

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

Paramètres

source
IEnumerable<Int64>

Séquence de valeurs Int64 dont la somme doit être calculée.

Retours

Somme des valeurs de la séquence.

Exceptions

source a la valeur null.

La somme est supérieure à Int64.MaxValue.

Remarques

Cette méthode retourne zéro si source ne contient aucun élément.

Dans la syntaxe d’expression de requête Visual Basic, une Aggregate Into Sum() clause se traduit par un appel de Sum.

Voir aussi

S’applique à

.NET 9 et autres versions
Produit Versions
.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

Calcule la somme d'une séquence de valeurs Double.

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

Paramètres

source
IEnumerable<Double>

Séquence de valeurs Double dont la somme doit être calculée.

Retours

Somme des valeurs de la séquence.

Exceptions

source a la valeur null.

La somme est supérieure à Double.MaxValue.

Remarques

Cette méthode retourne zéro si source ne contient aucun élément.

Dans la syntaxe d’expression de requête Visual Basic, une Aggregate Into Sum() clause se traduit par un appel de Sum.

Voir aussi

S’applique à

.NET 9 et autres versions
Produit Versions
.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

Calcule la somme d'une séquence de valeurs Decimal.

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

Paramètres

source
IEnumerable<Decimal>

Séquence de valeurs Decimal dont la somme doit être calculée.

Retours

Somme des valeurs de la séquence.

Exceptions

source a la valeur null.

La somme est supérieure à Decimal.MaxValue.

Remarques

La Sum(IEnumerable<Decimal>) méthode retourne zéro si source ne contient aucun élément.

Dans la syntaxe d’expression de requête Visual Basic, une Aggregate Into Sum() clause se traduit par un appel de Sum.

Voir aussi

S’applique à

.NET 9 et autres versions
Produit Versions
.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

Calcule la somme d'une séquence de valeurs Decimal nullables.

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

Paramètres

source
IEnumerable<Nullable<Decimal>>

Séquence de valeurs Decimal nullables dont la somme doit être calculée.

Retours

Somme des valeurs de la séquence.

Exceptions

source a la valeur null.

La somme est supérieure à Decimal.MaxValue.

Remarques

Les éléments dans source qui sont null exclus du calcul de la somme. Cette méthode retourne zéro si source ne contient aucun élément ou si tous les éléments sont null.

Dans la syntaxe d’expression de requête Visual Basic, une Aggregate Into Sum() clause se traduit par un appel de Sum.

Voir aussi

S’applique à

.NET 9 et autres versions
Produit Versions
.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

Calcule la somme d'une séquence de valeurs Single obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée.

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

Paramètres de type

TSource

Le type des éléments de source.

Paramètres

source
IEnumerable<TSource>

Séquence de valeurs utilisées pour calculer une somme.

selector
Func<TSource,Single>

Fonction de transformation à appliquer à chaque élément.

Retours

Somme des valeurs projetées.

Exceptions

source ou selector est null.

Exemples

L’exemple de code suivant montre comment utiliser Sum<TSource>(IEnumerable<TSource>, Func<TSource,Double>) pour additionner les valeurs projetées d’une séquence.

Note

Cet exemple de code utilise une surcharge de la méthode différente de la surcharge spécifique décrite dans cet article. Pour étendre l’exemple à la surcharge décrite dans cet article, modifiez le corps de la selector fonction.

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

Remarques

La Sum<TSource>(IEnumerable<TSource>, Func<TSource,Single>) méthode retourne zéro si source ne contient aucun élément.

Vous pouvez appliquer cette méthode à une séquence de valeurs arbitraires si vous fournissez une fonction , selectorqui projette les membres de source dans un type numérique, en particulier Single.

Dans la syntaxe d’expression de requête Visual Basic, une Aggregate Into Sum() clause se traduit par un appel de Sum.

Voir aussi

S’applique à

.NET 9 et autres versions
Produit Versions
.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

Calcule la somme d'une séquence de valeurs Int64 nullables obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée.

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

Paramètres de type

TSource

Le type des éléments de source.

Paramètres

source
IEnumerable<TSource>

Séquence de valeurs utilisées pour calculer une somme.

selector
Func<TSource,Nullable<Int64>>

Fonction de transformation à appliquer à chaque élément.

Retours

Somme des valeurs projetées.

Exceptions

source ou selector est null.

La somme est supérieure à Int64.MaxValue.

Exemples

L’exemple de code suivant montre comment utiliser Sum<TSource>(IEnumerable<TSource>, Func<TSource,Double>) pour additionner les valeurs projetées d’une séquence.

Note

Cet exemple de code utilise une surcharge de la méthode différente de la surcharge spécifique décrite dans cet article. Pour étendre l’exemple à la surcharge décrite dans cet article, modifiez le corps de la selector fonction.

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

Remarques

Les éléments dans source qui sont null exclus du calcul de la somme. Cette méthode retourne zéro si source ne contient aucun élément ou si tous les éléments sont null.

Vous pouvez appliquer cette méthode à une séquence de valeurs arbitraires si vous fournissez une fonction , selectorqui projette les membres de source dans un type numérique, en particulier Nullable<Int64> en C# ou Nullable(Of Int64) en Visual Basic

Dans la syntaxe d’expression de requête Visual Basic, une Aggregate Into Sum() clause se traduit par un appel de Sum.

Voir aussi

S’applique à

.NET 9 et autres versions
Produit Versions
.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

Calcule la somme d'une séquence de valeurs Int32 nullables obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée.

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

Paramètres de type

TSource

Le type des éléments de source.

Paramètres

source
IEnumerable<TSource>

Séquence de valeurs utilisées pour calculer une somme.

selector
Func<TSource,Nullable<Int32>>

Fonction de transformation à appliquer à chaque élément.

Retours

Somme des valeurs projetées.

Exceptions

source ou selector est null.

La somme est supérieure à Int32.MaxValue.

Exemples

L’exemple de code suivant montre comment utiliser Sum<TSource>(IEnumerable<TSource>, Func<TSource,Double>) pour additionner les valeurs projetées d’une séquence.

Note

Cet exemple de code utilise une surcharge de la méthode différente de la surcharge spécifique décrite dans cet article. Pour étendre l’exemple à la surcharge décrite dans cet article, modifiez le corps de la selector fonction.

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

Remarques

Les éléments dans source qui sont null exclus du calcul de la somme. Cette méthode retourne zéro si source ne contient aucun élément ou si tous les éléments sont null.

Vous pouvez appliquer cette méthode à une séquence de valeurs arbitraires si vous fournissez une fonction , selectorqui projette les membres de source dans un type numérique, en Nullable<Int32> particulier en C# ou Nullable(Of Int32) en Visual Basic.

Dans la syntaxe d’expression de requête Visual Basic, une Aggregate Into Sum() clause se traduit par un appel de Sum.

Voir aussi

S’applique à

.NET 9 et autres versions
Produit Versions
.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

Calcule la somme d'une séquence de valeurs Double nullables obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée.

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

Paramètres de type

TSource

Le type des éléments de source.

Paramètres

source
IEnumerable<TSource>

Séquence de valeurs utilisées pour calculer une somme.

selector
Func<TSource,Nullable<Double>>

Fonction de transformation à appliquer à chaque élément.

Retours

Somme des valeurs projetées.

Exceptions

source ou selector est null.

La somme est supérieure à Double.MaxValue.

Exemples

L’exemple de code suivant montre comment utiliser Sum<TSource>(IEnumerable<TSource>, Func<TSource,Double>) pour additionner les valeurs projetées d’une séquence.

Note

Cet exemple de code utilise une surcharge de la méthode différente de la surcharge spécifique décrite dans cet article. Pour étendre l’exemple à la surcharge décrite dans cet article, modifiez le corps de la selector fonction.

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

Remarques

Les éléments dans source qui sont null exclus du calcul de la somme. Cette méthode retourne zéro si source ne contient aucun élément ou si tous les éléments sont null.

Vous pouvez appliquer cette méthode à une séquence de valeurs arbitraires si vous fournissez une fonction , selectorqui projette les membres de source dans un type numérique, en Nullable<Double> particulier en C# ou Nullable(Of Double) en Visual Basic.

Dans la syntaxe d’expression de requête Visual Basic, une Aggregate Into Sum() clause se traduit par un appel de Sum.

Voir aussi

S’applique à

.NET 9 et autres versions
Produit Versions
.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

Calcule la somme d'une séquence de valeurs Single nullables obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée.

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

Paramètres de type

TSource

Le type des éléments de source.

Paramètres

source
IEnumerable<TSource>

Séquence de valeurs utilisées pour calculer une somme.

selector
Func<TSource,Nullable<Single>>

Fonction de transformation à appliquer à chaque élément.

Retours

Somme des valeurs projetées.

Exceptions

source ou selector est null.

Exemples

L’exemple de code suivant montre comment utiliser Sum<TSource>(IEnumerable<TSource>, Func<TSource,Double>) pour additionner les valeurs projetées d’une séquence.

Note

Cet exemple de code utilise une surcharge de la méthode différente de la surcharge spécifique décrite dans cet article. Pour étendre l’exemple à la surcharge décrite dans cet article, modifiez le corps de la selector fonction.

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

Remarques

Les éléments dans source qui sont null exclus du calcul de la somme. Cette méthode retourne zéro si source ne contient aucun élément ou si tous les éléments sont null.

Vous pouvez appliquer cette méthode à une séquence de valeurs arbitraires si vous fournissez une fonction , selectorqui projette les membres de source dans un type numérique, en Nullable<Single> particulier en C# ou Nullable(Of Single) en Visual Basic.

Dans la syntaxe d’expression de requête Visual Basic, une Aggregate Into Sum() clause se traduit par un appel de Sum.

Voir aussi

S’applique à

.NET 9 et autres versions
Produit Versions
.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

Calcule la somme d'une séquence de valeurs Int64 obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée.

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

Paramètres de type

TSource

Le type des éléments de source.

Paramètres

source
IEnumerable<TSource>

Séquence de valeurs utilisées pour calculer une somme.

selector
Func<TSource,Int64>

Fonction de transformation à appliquer à chaque élément.

Retours

Somme des valeurs projetées.

Exceptions

source ou selector est null.

La somme est supérieure à Int64.MaxValue.

Exemples

L’exemple de code suivant montre comment utiliser Sum<TSource>(IEnumerable<TSource>, Func<TSource,Double>) pour additionner les valeurs projetées d’une séquence.

Note

Cet exemple de code utilise une surcharge de la méthode qui est différente de la surcharge spécifique décrite dans cet article. Pour étendre l’exemple à la surcharge décrite dans cet article, modifiez le corps de la selector fonction.

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

Remarques

Cette méthode retourne zéro si source ne contient aucun élément.

Vous pouvez appliquer cette méthode à une séquence de valeurs arbitraires si vous fournissez une fonction, selector, qui projette les membres de source dans un type numérique, en particulier Int64.

Dans la syntaxe d’expression de requête Visual Basic, une Aggregate Into Sum() clause se traduit par un appel de Sum.

Voir aussi

S’applique à

.NET 9 et autres versions
Produit Versions
.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

Calcule la somme d'une séquence de valeurs Int32 obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée.

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

Paramètres de type

TSource

Le type des éléments de source.

Paramètres

source
IEnumerable<TSource>

Séquence de valeurs utilisées pour calculer une somme.

selector
Func<TSource,Int32>

Fonction de transformation à appliquer à chaque élément.

Retours

Somme des valeurs projetées.

Exceptions

source ou selector est null.

La somme est supérieure à Int32.MaxValue.

Exemples

L’exemple de code suivant montre comment utiliser Sum<TSource>(IEnumerable<TSource>, Func<TSource,Double>) pour additionner les valeurs projetées d’une séquence.

Note

Cet exemple de code utilise une surcharge de la méthode qui est différente de la surcharge spécifique décrite dans cet article. Pour étendre l’exemple à la surcharge décrite dans cet article, modifiez le corps de la selector fonction.

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

Remarques

Cette méthode retourne zéro si source ne contient aucun élément.

Vous pouvez appliquer cette méthode à une séquence de valeurs arbitraires si vous fournissez une fonction, selector, qui projette les membres de source dans un type numérique, en particulier Int32.

Dans la syntaxe d’expression de requête Visual Basic, une Aggregate Into Sum() clause se traduit par un appel de Sum.

Voir aussi

S’applique à

.NET 9 et autres versions
Produit Versions
.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

Calcule la somme d'une séquence de valeurs Double obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée.

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

Paramètres de type

TSource

Le type des éléments de source.

Paramètres

source
IEnumerable<TSource>

Séquence de valeurs utilisées pour calculer une somme.

selector
Func<TSource,Double>

Fonction de transformation à appliquer à chaque élément.

Retours

Somme des valeurs projetées.

Exceptions

source ou selector est null.

La somme est supérieure à Double.MaxValue.

Exemples

L’exemple de code suivant montre comment utiliser Sum<TSource>(IEnumerable<TSource>, Func<TSource,Double>) pour additionner les valeurs projetées d’une séquence.

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

Remarques

Cette méthode retourne zéro si source ne contient aucun élément.

Vous pouvez appliquer cette méthode à une séquence de valeurs arbitraires si vous fournissez une fonction, selector, qui projette les membres de source dans un type numérique, en particulier Double.

Dans la syntaxe d’expression de requête Visual Basic, une Aggregate Into Sum() clause se traduit par un appel de Sum.

Voir aussi

S’applique à

.NET 9 et autres versions
Produit Versions
.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

Calcule la somme d'une séquence de valeurs Decimal obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée.

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

Paramètres de type

TSource

Le type des éléments de source.

Paramètres

source
IEnumerable<TSource>

Séquence de valeurs utilisées pour calculer une somme.

selector
Func<TSource,Decimal>

Fonction de transformation à appliquer à chaque élément.

Retours

Somme des valeurs projetées.

Exceptions

source ou selector est null.

La somme est supérieure à Decimal.MaxValue.

Exemples

L’exemple de code suivant montre comment utiliser Sum<TSource>(IEnumerable<TSource>, Func<TSource,Double>) pour additionner les valeurs projetées d’une séquence.

Note

Cet exemple de code utilise une surcharge de la méthode qui est différente de la surcharge spécifique décrite dans cet article. Pour étendre l’exemple à la surcharge décrite dans cet article, modifiez le corps de la selector fonction.

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

Remarques

Cette méthode retourne zéro si source ne contient aucun élément.

Vous pouvez appliquer cette méthode à une séquence de valeurs arbitraires si vous fournissez une fonction, selector, qui projette les membres de source dans un type numérique, en particulier Decimal.

Dans la syntaxe d’expression de requête Visual Basic, une Aggregate Into Sum() clause se traduit par un appel de Sum.

Voir aussi

S’applique à

.NET 9 et autres versions
Produit Versions
.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

Calcule la somme d'une séquence de valeurs Decimal nullables obtenues en appelant une fonction de transformation sur chaque élément de la séquence d'entrée.

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

Paramètres de type

TSource

Le type des éléments de source.

Paramètres

source
IEnumerable<TSource>

Séquence de valeurs utilisées pour calculer une somme.

selector
Func<TSource,Nullable<Decimal>>

Fonction de transformation à appliquer à chaque élément.

Retours

Somme des valeurs projetées.

Exceptions

source ou selector est null.

La somme est supérieure à Decimal.MaxValue.

Exemples

L’exemple de code suivant montre comment utiliser Sum<TSource>(IEnumerable<TSource>, Func<TSource,Double>) pour additionner les valeurs projetées d’une séquence.

Note

Cet exemple de code utilise une surcharge de la méthode qui est différente de la surcharge spécifique décrite dans cet article. Pour étendre l’exemple à la surcharge décrite dans cet article, modifiez le corps de la selector fonction.

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

Remarques

Les éléments dans source qui sont null exclus du calcul de la somme. Cette méthode retourne zéro si source ne contient aucun élément ou si tous les éléments sont null.

Vous pouvez appliquer cette méthode à une séquence de valeurs arbitraires si vous fournissez une fonction, selector, qui projette les membres de source dans un type numérique, spécifiquement Nullable<Decimal> en C# ou Nullable(Of Decimal) en Visual Basic.

Dans la syntaxe d’expression de requête Visual Basic, une Aggregate Into Sum() clause se traduit par un appel de Sum.

Voir aussi

S’applique à

.NET 9 et autres versions
Produit Versions
.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