Данная статья переведена с помощью средств машинного перевода. Чтобы просмотреть ее на английском языке, установите флажок Английский. Вы также можете просматривать английский текст во всплывающем окне, наводя указатель мыши на переведенный текст.
Перевод
Английский

Метод Enumerable.Average<TSource>(IEnumerable<TSource>, Func<TSource, Nullable<Decimal>>)

 

Опубликовано: Октябрь 2016

Вычисляет среднее для последовательности nullable Decimal значений, получаемой в результате применения функции преобразования к каждому элементу входной последовательности.

Пространство имен:   System.Linq
Сборка:  System.Core (в System.Core.dll)

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

Параметры

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

Последовательность значений, для вычисления среднего.

selector
Type: System.Func<TSource, Nullable<Decimal>>

Функция преобразования, применяемая к каждому элементу.

Возвращаемое значение

Type: System.Nullable<Decimal>

Среднее для последовательности значений, или null Если исходная последовательность пуста или содержит только значения, которые являются null.

Параметры типа

TSource

Тип элементов source.

Exception Condition
ArgumentNullException

Параметр source или selector имеет значение null.

OverflowException

Превышает сумму элементов в последовательности MaxValue.

В Visual Basic синтаксис выражения запроса Aggregate Into Average() предложение преобразуется в вызов метода Average.

В следующем примере кода демонстрируется использование Average<TSource>(IEnumerable<TSource>, Func<TSource, Int64>) для вычисления среднего.

System_CAPS_noteПримечание

В этом примере кода используется перегруженная версия данного метода, отличная от его перегруженной версии, описанной в настоящем разделе. Чтобы распространить пример на этот раздел, измените текст функции selector.

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
Вернуться в начало
Показ: