Maison >développement back-end >C++ >Comment additionner les valeurs d'une propriété à partir d'une liste d'objets en C# ?

Comment additionner les valeurs d'une propriété à partir d'une liste d'objets en C# ?

Patricia Arquette
Patricia Arquetteoriginal
2025-01-09 06:32:42575parcourir

How to Sum a Property's Values from a List of Objects in C#?

Comment calculer la somme des attributs dans une liste d'objets en C# ?

Calculer la somme d'une propriété spécifique est un besoin courant lorsque l'on travaille avec des listes d'objets. C# fournit la fonction Sum pour les tableaux et les listes, ce qui facilite le calcul des valeurs agrégées.

Pour illustrer l'utilisation de Sum dans les objets, considérons le scénario suivant :

Étant donné une liste d'objets, dont chacun contient une propriété Montant, comment récupérer le montant total à l'aide de la fonction Somme ?

Problèmes de grammaire

Essayer d'utiliser myList.amount.Sum() entraînera une erreur de syntaxe. La raison en est que le montant de la propriété n'est pas accessible directement à partir de la liste elle-même. Au lieu de cela, vous devez spécifier un délégué ou une expression lambda pour accéder à la propriété Amount de chaque objet de la liste.

Solution

Pour résoudre ce problème, vous pouvez utiliser une expression lambda pour extraire la propriété Amount de chaque objet de la liste, puis appliquer la fonction Sum à la collection de valeurs numériques résultante. Voici un exemple :

<code class="language-csharp">using System.Linq;
...
double total = myList.Sum(item => item.Amount);</code>

Dans cet exemple, l'expression lambda item => item.Amount récupère la propriété Amount de chaque élément dans myList. La fonction Somme applique ensuite une opération de somme à l'ensemble extrait de valeurs de montant, calculant ainsi le montant total.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn