微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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方法.这允许您在数据库中对数字求和,而无需获取它们并在本地循环它们.相反,可以在数据库中执行求和操作,只返回结果.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐