c# – 我可以直接添加整数列表而不通过它循环吗?

我有一个整数列表 –

List<int> intlist= new List<int>();

我可以说 –

intlist.Sum();//I kNow sum() is already there as a function but I dont kNow how I can use it

并获得该列表的总和而不循环它.

解决方法

是的,你可以像这样使用Sum.只需将结果分配给某些内容

int s = intList.Sum();

现在,您将列表中的数字总和存储在名为s的变量中.

它实际上是.NET 3.5中添加的扩展方法Enumerable.Sum,它不仅仅适用于列表.

当然在内部这仍然会遍历数字并添加它们,但调用方法要比自己编写方法容易得多.使用.NET Reflector,您可以看到实现非常简单:

public static int Sum(this IEnumerable<int> source)
{
    if (source == null)
    {
        throw Error.ArgumentNull("source");
    }

    int num = 0;
    foreach (int num2 in source)
    {
        num += num2;
    }
    return num;
}

请注意,还有一个Queryable.Sum方法.这允许您在数据库中对数字求和,而无需获取它们并在本地循环它们.相反,可以在数据库中执行求和操作,只返回结果.

相关文章

目录简介使用JS互操作使用ClipLazor库创建项目使用方法简单测...
目录简介快速入门安装 NuGet 包实体类User数据库类DbFactory...
本文实现一个简单的配置类,原理比较简单,适用于一些小型项...
C#中Description特性主要用于枚举和属性,方法比较简单,记录...
[TOC] # 原理简介 本文参考[C#/WPF/WinForm/程序实现软件开机...
目录简介获取 HTML 文档解析 HTML 文档测试补充:使用 CSS 选...