导出 (0) 打印
全部展开
信息
您所需的主题如下所示。但此主题未包含在此库中。

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

2013/12/13

计算可以为 null 的 Double 值序列的平均值,该值可通过调用输入序列的每个元素的转换函数获取。

Namespace:  System.Linq
程序集:  System.Core(位于 System.Core.dll 中)

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

类型参数

TSource

source 中的元素的类型。

参数

source
类型: System.Collections.Generic.IEnumerable<TSource>
要计算其平均值的值序列。
selector
类型: System.Func<TSource, Nullable<Double>>
应用于每个元素的转换函数。

返回值

类型: System.Nullable<Double>
值序列的平均值;如果源序列为空或仅包含为 null 的值,则为 null

用法说明

在 Visual Basic 和 C# 中,您可以对类型为 IEnumerable<TSource> 的任何对象调用此方法作为实例方法。使用实例方法语法来调用此方法时,忽略第一个参数。

异常条件
ArgumentNullException

sourceselectornull

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

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

说明注意:

此代码示例使用此重载方法的重载,该重载与本主题介绍的特定重载不同。若要将该示例扩展到此主题,请更改 selector 函数的函数体。


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

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

      outputBlock.Text += String.Format("The average is {0}.", average) + "\n";

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



Windows Phone OS

受以下版本支持: 8.0, 7.1, 7.0

Windows Phone

显示:
© 2014 Microsoft