c#中list.sum()
List.Sum 是 C# 中 System.Linq 命名空间下的一个扩展方法,用于计算集合中所有元素的总和。这个方法可以用于计算 List
基本用法
以下是一些示例,展示如何使用 List.Sum 方法:
示例 1:计算整数列表的总和
点击查看代码
using System;
using System.Collections.Generic;
using System.Linq;
class Program
{
static void Main()
{
List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };
int sum = numbers.Sum();
Console.WriteLine(sum); // 输出: 15
}
}
示例 2:计算双精度浮点数列表的总和
点击查看代码
using System;
using System.Collections.Generic;
using System.Linq;
class Program
{
static void Main()
{
List<double> numbers = new List<double> { 1.1, 2.2, 3.3, 4.4, 5.5 };
double sum = numbers.Sum();
Console.WriteLine(sum); // 输出: 16.5
}
}
带选择器函数的用法
你可以使用选择器函数从集合的每个元素中提取数值,然后计算这些数值的总和。这个功能在处理复杂对象集合时非常有用。
示例 3:计算对象列表中某个属性的总和
假设我们有一个 Product 类,每个 Product 对象都有一个 Price 属性。我们可以计算所有产品价格的总和。
点击查看代码
using System;
using System.Collections.Generic;
using System.Linq;
class Product
{
public string Name { get; set; }
public decimal Price { get; set; }
}
class Program
{
static void Main()
{
List<Product> products = new List<Product>
{
new Product { Name = "Product1", Price = 10.5m },
new Product { Name = "Product2", Price = 20.75m },
new Product { Name = "Product3", Price = 15.0m }
};
decimal totalPrice = products.Sum(p => p.Price);
Console.WriteLine(totalPrice); // 输出: 46.25
}
}
注意事项
空列表:
如果列表为空,Sum 方法将返回数值类型的默认值,例如 0 对于整数和浮点数。
Null 值:
如果列表包含 null 值(对于可空类型),Sum 方法会跳过这些 null 值,不会抛出异常。
性能:
Sum 方法会遍历集合中的所有元素,因此对于非常大的集合,计算总和可能会比较耗时。
通过 List.Sum 方法,可以方便地计算集合中元素的总和,尤其是在处理复杂对象集合时,可以通过选择器函数提取并计算特定属性的总和。