本文由机器翻译。若要查看英语原文,请勾选“英语”复选框。 也可将鼠标指针移到文本上,在弹出窗口中显示英语原文。
翻译
英语

Enumerable.Average<TSource> 方法 (IEnumerable<TSource>, Func<TSource, Int64>)

 

计算序列的平均值 Int64 通过调用对输入序列中的每个元素的转换函数获得的值。

命名空间:   System.Linq
程序集:  System.Core(位于 System.Core.dll)

public static double Average<TSource>(
	this IEnumerable<TSource> source,
	Func<TSource, long> selector
)

参数

source
Type: System.Collections.Generic.IEnumerable<TSource>

要计算的平均值的值序列。

selector
Type: System.Func<TSource, Int64>

应用于每个元素的转换函数。

返回值

Type: System.Double

值序列的平均值。

类型参数

TSource

源的元素的类型。

Exception Condition
ArgumentNullException

sourceselectornull

InvalidOperationException

source 不包含任何元素。

OverflowException

在序列中元素的总和大于 MaxValue

在 Visual Basic 查询表达式语法中, Aggregate Into Average() 子句转换为的一个调用 Average

下面的代码示例演示如何使用 Average<TSource>(IEnumerable<TSource>, Func<TSource, Int64>) 计算平均值。

string[] numbers = { "10007", "37", "299846234235" };

double average = numbers.Average(num => Convert.ToInt64(num));

Console.WriteLine("The average is {0}.", average);

// This code produces the following output:
//
// The average is 99948748093. 

通用 Windows 平台
自 8 起可用
.NET Framework
自 3.5 起可用
可移植类库
可移植 .NET 平台 中受支持
Silverlight
自 2.0 起可用
Windows Phone Silverlight
自 7.0 起可用
Windows Phone
自 8.1 起可用
返回页首
显示: