Enumerable.Sum Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
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.
public:
[System::Runtime::CompilerServices::Extension]
static float Sum(System::Collections::Generic::IEnumerable<float> ^ source);
public static float Sum (this System.Collections.Generic.IEnumerable<float> source);
static member Sum : seq<single> -> single
<Extension()>
Public Function Sum (source As IEnumerable(Of Single)) As Single
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.
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.
*/
' Create a list of Single values.
Dim numbers As New List(Of Single)(New Single() _
{43.68F, 1.25F, 583.7F, 6.5F})
' Get the sum of values in the list.
Dim sum As Single = numbers.Sum()
' Display the output.
Console.WriteLine($"The sum of the numbers is {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 à
Sum(IEnumerable<Nullable<Int32>>)
- Source:
- Sum.cs
- Source:
- Sum.cs
- Source:
- Sum.cs
Calcule la somme d'une séquence de valeurs Int32 nullables.
public:
[System::Runtime::CompilerServices::Extension]
static Nullable<int> Sum(System::Collections::Generic::IEnumerable<Nullable<int>> ^ source);
public static int? Sum (this System.Collections.Generic.IEnumerable<int?> source);
static member Sum : seq<Nullable<int>> -> Nullable<int>
<Extension()>
Public Function Sum (source As IEnumerable(Of Nullable(Of Integer))) As Nullable(Of Integer)
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 à
Sum(IEnumerable<Nullable<Single>>)
- Source:
- Sum.cs
- Source:
- Sum.cs
- Source:
- Sum.cs
Calcule la somme d'une séquence de valeurs Single nullables.
public:
[System::Runtime::CompilerServices::Extension]
static Nullable<float> Sum(System::Collections::Generic::IEnumerable<Nullable<float>> ^ source);
public static float? Sum (this System.Collections.Generic.IEnumerable<float?> source);
static member Sum : seq<Nullable<single>> -> Nullable<single>
<Extension()>
Public Function Sum (source As IEnumerable(Of Nullable(Of Single))) As Nullable(Of Single)
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.
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
*/
' Create an array of Nullable Single values.
Dim points() As Nullable(Of Single) =
{Nothing, 0, 92.83F, Nothing, 100.0F, 37.46F, 81.1F}
' Get the sum of values in the list.
Dim sum As Nullable(Of Single) = points.Sum()
' Display the output.
Console.WriteLine($"Total points earned: {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 à
Sum(IEnumerable<Nullable<Int64>>)
- Source:
- Sum.cs
- Source:
- Sum.cs
- Source:
- Sum.cs
Calcule la somme d'une séquence de valeurs Int64 nullables.
public:
[System::Runtime::CompilerServices::Extension]
static Nullable<long> Sum(System::Collections::Generic::IEnumerable<Nullable<long>> ^ source);
public static long? Sum (this System.Collections.Generic.IEnumerable<long?> source);
static member Sum : seq<Nullable<int64>> -> Nullable<int64>
<Extension()>
Public Function Sum (source As IEnumerable(Of Nullable(Of Long))) As Nullable(Of Long)
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 à
Sum(IEnumerable<Nullable<Double>>)
- Source:
- Sum.cs
- Source:
- Sum.cs
- Source:
- Sum.cs
Calcule la somme d'une séquence de valeurs Double nullables.
public:
[System::Runtime::CompilerServices::Extension]
static Nullable<double> Sum(System::Collections::Generic::IEnumerable<Nullable<double>> ^ source);
public static double? Sum (this System.Collections.Generic.IEnumerable<double?> source);
static member Sum : seq<Nullable<double>> -> Nullable<double>
<Extension()>
Public Function Sum (source As IEnumerable(Of Nullable(Of Double))) As Nullable(Of Double)
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 à
Sum(IEnumerable<Int32>)
- Source:
- Sum.cs
- Source:
- Sum.cs
- Source:
- Sum.cs
Calcule la somme d'une séquence de valeurs Int32.
public:
[System::Runtime::CompilerServices::Extension]
static int Sum(System::Collections::Generic::IEnumerable<int> ^ source);
public static int Sum (this System.Collections.Generic.IEnumerable<int> source);
static member Sum : seq<int> -> int
<Extension()>
Public Function Sum (source As IEnumerable(Of Integer)) As Integer
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 à
Sum(IEnumerable<Int64>)
- Source:
- Sum.cs
- Source:
- Sum.cs
- Source:
- Sum.cs
Calcule la somme d'une séquence de valeurs Int64.
public:
[System::Runtime::CompilerServices::Extension]
static long Sum(System::Collections::Generic::IEnumerable<long> ^ source);
public static long Sum (this System.Collections.Generic.IEnumerable<long> source);
static member Sum : seq<int64> -> int64
<Extension()>
Public Function Sum (source As IEnumerable(Of Long)) As Long
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 à
Sum(IEnumerable<Double>)
- Source:
- Sum.cs
- Source:
- Sum.cs
- Source:
- Sum.cs
Calcule la somme d'une séquence de valeurs Double.
public:
[System::Runtime::CompilerServices::Extension]
static double Sum(System::Collections::Generic::IEnumerable<double> ^ source);
public static double Sum (this System.Collections.Generic.IEnumerable<double> source);
static member Sum : seq<double> -> double
<Extension()>
Public Function Sum (source As IEnumerable(Of Double)) As Double
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 à
Sum(IEnumerable<Decimal>)
- Source:
- Sum.cs
- Source:
- Sum.cs
- Source:
- Sum.cs
Calcule la somme d'une séquence de valeurs Decimal.
public:
[System::Runtime::CompilerServices::Extension]
static System::Decimal Sum(System::Collections::Generic::IEnumerable<System::Decimal> ^ source);
public static decimal Sum (this System.Collections.Generic.IEnumerable<decimal> source);
static member Sum : seq<decimal> -> decimal
<Extension()>
Public Function Sum (source As IEnumerable(Of Decimal)) As Decimal
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 à
Sum(IEnumerable<Nullable<Decimal>>)
- Source:
- Sum.cs
- Source:
- Sum.cs
- Source:
- Sum.cs
Calcule la somme d'une séquence de valeurs Decimal nullables.
public:
[System::Runtime::CompilerServices::Extension]
static Nullable<System::Decimal> Sum(System::Collections::Generic::IEnumerable<Nullable<System::Decimal>> ^ source);
public static decimal? Sum (this System.Collections.Generic.IEnumerable<decimal?> source);
static member Sum : seq<Nullable<decimal>> -> Nullable<decimal>
<Extension()>
Public Function Sum (source As IEnumerable(Of Nullable(Of Decimal))) As Nullable(Of Decimal)
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 à
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.
public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
static float Sum(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, float> ^ selector);
public static float Sum<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,float> selector);
static member Sum : seq<'Source> * Func<'Source, single> -> single
<Extension()>
Public Function Sum(Of TSource) (source As IEnumerable(Of TSource), selector As Func(Of TSource, Single)) As Single
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.
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.
Notes
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.
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
*/
Structure Package
Public Company As String
Public Weight As Double
End Structure
Sub SumEx1()
' Create a list of Package values.
Dim packages As New List(Of Package)(New Package() _
{New Package With {.Company = "Coho Vineyard", .Weight = 25.2},
New Package With {.Company = "Lucerne Publishing", .Weight = 18.7},
New Package With {.Company = "Wingtip Toys", .Weight = 6.0},
New Package With {.Company = "Adventure Works", .Weight = 33.8}})
' Sum the values from each item's Weight property.
Dim totalWeight As Double = packages.Sum(Function(pkg) _
pkg.Weight)
' Display the result.
Console.WriteLine($"The total weight of the packages is: {totalWeight}")
End Sub
' 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 , selector
qui 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 à
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.
public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
static Nullable<long> Sum(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, Nullable<long>> ^ selector);
public static long? Sum<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,long?> selector);
static member Sum : seq<'Source> * Func<'Source, Nullable<int64>> -> Nullable<int64>
<Extension()>
Public Function Sum(Of TSource) (source As IEnumerable(Of TSource), selector As Func(Of TSource, Nullable(Of Long))) As Nullable(Of Long)
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.
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.
Notes
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.
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
*/
Structure Package
Public Company As String
Public Weight As Double
End Structure
Sub SumEx1()
' Create a list of Package values.
Dim packages As New List(Of Package)(New Package() _
{New Package With {.Company = "Coho Vineyard", .Weight = 25.2},
New Package With {.Company = "Lucerne Publishing", .Weight = 18.7},
New Package With {.Company = "Wingtip Toys", .Weight = 6.0},
New Package With {.Company = "Adventure Works", .Weight = 33.8}})
' Sum the values from each item's Weight property.
Dim totalWeight As Double = packages.Sum(Function(pkg) _
pkg.Weight)
' Display the result.
Console.WriteLine($"The total weight of the packages is: {totalWeight}")
End Sub
' 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, 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 à
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.
public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
static Nullable<int> Sum(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, Nullable<int>> ^ selector);
public static int? Sum<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,int?> selector);
static member Sum : seq<'Source> * Func<'Source, Nullable<int>> -> Nullable<int>
<Extension()>
Public Function Sum(Of TSource) (source As IEnumerable(Of TSource), selector As Func(Of TSource, Nullable(Of Integer))) As Nullable(Of Integer)
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.
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.
Notes
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.
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
*/
Structure Package
Public Company As String
Public Weight As Double
End Structure
Sub SumEx1()
' Create a list of Package values.
Dim packages As New List(Of Package)(New Package() _
{New Package With {.Company = "Coho Vineyard", .Weight = 25.2},
New Package With {.Company = "Lucerne Publishing", .Weight = 18.7},
New Package With {.Company = "Wingtip Toys", .Weight = 6.0},
New Package With {.Company = "Adventure Works", .Weight = 33.8}})
' Sum the values from each item's Weight property.
Dim totalWeight As Double = packages.Sum(Function(pkg) _
pkg.Weight)
' Display the result.
Console.WriteLine($"The total weight of the packages is: {totalWeight}")
End Sub
' 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, 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 à
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.
public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
static Nullable<double> Sum(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, Nullable<double>> ^ selector);
public static double? Sum<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,double?> selector);
static member Sum : seq<'Source> * Func<'Source, Nullable<double>> -> Nullable<double>
<Extension()>
Public Function Sum(Of TSource) (source As IEnumerable(Of TSource), selector As Func(Of TSource, Nullable(Of Double))) As Nullable(Of Double)
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.
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.
Notes
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.
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
*/
Structure Package
Public Company As String
Public Weight As Double
End Structure
Sub SumEx1()
' Create a list of Package values.
Dim packages As New List(Of Package)(New Package() _
{New Package With {.Company = "Coho Vineyard", .Weight = 25.2},
New Package With {.Company = "Lucerne Publishing", .Weight = 18.7},
New Package With {.Company = "Wingtip Toys", .Weight = 6.0},
New Package With {.Company = "Adventure Works", .Weight = 33.8}})
' Sum the values from each item's Weight property.
Dim totalWeight As Double = packages.Sum(Function(pkg) _
pkg.Weight)
' Display the result.
Console.WriteLine($"The total weight of the packages is: {totalWeight}")
End Sub
' 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, 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 à
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.
public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
static Nullable<float> Sum(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, Nullable<float>> ^ selector);
public static float? Sum<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,float?> selector);
static member Sum : seq<'Source> * Func<'Source, Nullable<single>> -> Nullable<single>
<Extension()>
Public Function Sum(Of TSource) (source As IEnumerable(Of TSource), selector As Func(Of TSource, Nullable(Of Single))) As Nullable(Of Single)
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.
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.
Notes
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.
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
*/
Structure Package
Public Company As String
Public Weight As Double
End Structure
Sub SumEx1()
' Create a list of Package values.
Dim packages As New List(Of Package)(New Package() _
{New Package With {.Company = "Coho Vineyard", .Weight = 25.2},
New Package With {.Company = "Lucerne Publishing", .Weight = 18.7},
New Package With {.Company = "Wingtip Toys", .Weight = 6.0},
New Package With {.Company = "Adventure Works", .Weight = 33.8}})
' Sum the values from each item's Weight property.
Dim totalWeight As Double = packages.Sum(Function(pkg) _
pkg.Weight)
' Display the result.
Console.WriteLine($"The total weight of the packages is: {totalWeight}")
End Sub
' 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, 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 à
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.
public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
static long Sum(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, long> ^ selector);
public static long Sum<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,long> selector);
static member Sum : seq<'Source> * Func<'Source, int64> -> int64
<Extension()>
Public Function Sum(Of TSource) (source As IEnumerable(Of TSource), selector As Func(Of TSource, Long)) As Long
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.
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.
Notes
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.
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
*/
Structure Package
Public Company As String
Public Weight As Double
End Structure
Sub SumEx1()
' Create a list of Package values.
Dim packages As New List(Of Package)(New Package() _
{New Package With {.Company = "Coho Vineyard", .Weight = 25.2},
New Package With {.Company = "Lucerne Publishing", .Weight = 18.7},
New Package With {.Company = "Wingtip Toys", .Weight = 6.0},
New Package With {.Company = "Adventure Works", .Weight = 33.8}})
' Sum the values from each item's Weight property.
Dim totalWeight As Double = packages.Sum(Function(pkg) _
pkg.Weight)
' Display the result.
Console.WriteLine($"The total weight of the packages is: {totalWeight}")
End Sub
' 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 à
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.
public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
static int Sum(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, int> ^ selector);
public static int Sum<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,int> selector);
static member Sum : seq<'Source> * Func<'Source, int> -> int
<Extension()>
Public Function Sum(Of TSource) (source As IEnumerable(Of TSource), selector As Func(Of TSource, Integer)) As Integer
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.
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.
Notes
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.
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
*/
Structure Package
Public Company As String
Public Weight As Double
End Structure
Sub SumEx1()
' Create a list of Package values.
Dim packages As New List(Of Package)(New Package() _
{New Package With {.Company = "Coho Vineyard", .Weight = 25.2},
New Package With {.Company = "Lucerne Publishing", .Weight = 18.7},
New Package With {.Company = "Wingtip Toys", .Weight = 6.0},
New Package With {.Company = "Adventure Works", .Weight = 33.8}})
' Sum the values from each item's Weight property.
Dim totalWeight As Double = packages.Sum(Function(pkg) _
pkg.Weight)
' Display the result.
Console.WriteLine($"The total weight of the packages is: {totalWeight}")
End Sub
' 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 à
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.
public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
static double Sum(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, double> ^ selector);
public static double Sum<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,double> selector);
static member Sum : seq<'Source> * Func<'Source, double> -> double
<Extension()>
Public Function Sum(Of TSource) (source As IEnumerable(Of TSource), selector As Func(Of TSource, Double)) As Double
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.
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.
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
*/
Structure Package
Public Company As String
Public Weight As Double
End Structure
Sub SumEx1()
' Create a list of Package values.
Dim packages As New List(Of Package)(New Package() _
{New Package With {.Company = "Coho Vineyard", .Weight = 25.2},
New Package With {.Company = "Lucerne Publishing", .Weight = 18.7},
New Package With {.Company = "Wingtip Toys", .Weight = 6.0},
New Package With {.Company = "Adventure Works", .Weight = 33.8}})
' Sum the values from each item's Weight property.
Dim totalWeight As Double = packages.Sum(Function(pkg) _
pkg.Weight)
' Display the result.
Console.WriteLine($"The total weight of the packages is: {totalWeight}")
End Sub
' 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 à
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.
public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
static System::Decimal Sum(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, System::Decimal> ^ selector);
public static decimal Sum<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,decimal> selector);
static member Sum : seq<'Source> * Func<'Source, decimal> -> decimal
<Extension()>
Public Function Sum(Of TSource) (source As IEnumerable(Of TSource), selector As Func(Of TSource, Decimal)) As Decimal
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.
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.
Notes
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.
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
*/
Structure Package
Public Company As String
Public Weight As Double
End Structure
Sub SumEx1()
' Create a list of Package values.
Dim packages As New List(Of Package)(New Package() _
{New Package With {.Company = "Coho Vineyard", .Weight = 25.2},
New Package With {.Company = "Lucerne Publishing", .Weight = 18.7},
New Package With {.Company = "Wingtip Toys", .Weight = 6.0},
New Package With {.Company = "Adventure Works", .Weight = 33.8}})
' Sum the values from each item's Weight property.
Dim totalWeight As Double = packages.Sum(Function(pkg) _
pkg.Weight)
' Display the result.
Console.WriteLine($"The total weight of the packages is: {totalWeight}")
End Sub
' 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 à
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.
public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
static Nullable<System::Decimal> Sum(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, Nullable<System::Decimal>> ^ selector);
public static decimal? Sum<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,decimal?> selector);
static member Sum : seq<'Source> * Func<'Source, Nullable<decimal>> -> Nullable<decimal>
<Extension()>
Public Function Sum(Of TSource) (source As IEnumerable(Of TSource), selector As Func(Of TSource, Nullable(Of Decimal))) As Nullable(Of Decimal)
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.
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.
Notes
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.
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
*/
Structure Package
Public Company As String
Public Weight As Double
End Structure
Sub SumEx1()
' Create a list of Package values.
Dim packages As New List(Of Package)(New Package() _
{New Package With {.Company = "Coho Vineyard", .Weight = 25.2},
New Package With {.Company = "Lucerne Publishing", .Weight = 18.7},
New Package With {.Company = "Wingtip Toys", .Weight = 6.0},
New Package With {.Company = "Adventure Works", .Weight = 33.8}})
' Sum the values from each item's Weight property.
Dim totalWeight As Double = packages.Sum(Function(pkg) _
pkg.Weight)
' Display the result.
Console.WriteLine($"The total weight of the packages is: {totalWeight}")
End Sub
' 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.