Enumerable.Average 方法

定義

計算數值序列的平均值。

多載

Average(IEnumerable<Single>)

計算 Single 值序列的平均值。

Average(IEnumerable<Nullable<Single>>)

計算可為 Null 之 Single 值序列的平均值。

Average(IEnumerable<Nullable<Int64>>)

計算可為 Null 之 Int64 值序列的平均值。

Average(IEnumerable<Nullable<Int32>>)

計算可為 Null 之 Int32 值序列的平均值。

Average(IEnumerable<Nullable<Double>>)

計算可為 Null 之 Double 值序列的平均值。

Average(IEnumerable<Double>)

計算 Double 值序列的平均值。

Average(IEnumerable<Int64>)

計算 Int64 值序列的平均值。

Average(IEnumerable<Int32>)

計算 Int32 值序列的平均值。

Average(IEnumerable<Decimal>)

計算 Decimal 值序列的平均值。

Average(IEnumerable<Nullable<Decimal>>)

計算可為 Null 之 Decimal 值序列的平均值。

Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>)

計算在輸入序列中各項目上叫用轉換函式後所取得可為 Null 之 Int32 值的平均值。

Average<TSource>(IEnumerable<TSource>, Func<TSource,Single>)

計算在輸入序列中各項目上叫用轉換函式後所取得之 Single 值序列的平均值。

Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>)

計算在輸入序列中各項目上叫用轉換函式後所取得可為 Null 之 Int64 值的平均值。

Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>)

計算在輸入序列中各項目上叫用轉換函式後所取得可為 Null 之 Double 值的平均值。

Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>)

計算在輸入序列中各項目上叫用轉換函式後所取得可為 Null 之 Single 值的平均值。

Average<TSource>(IEnumerable<TSource>, Func<TSource,Int64>)

計算在輸入序列中各項目上叫用轉換函式後所取得之 Int64 值序列的平均值。

Average<TSource>(IEnumerable<TSource>, Func<TSource,Int32>)

計算在輸入序列中各項目上叫用轉換函式後所取得之 Int32 值序列的平均值。

Average<TSource>(IEnumerable<TSource>, Func<TSource,Double>)

計算在輸入序列中各項目上叫用轉換函式後所取得之 Double 值序列的平均值。

Average<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>)

計算在輸入序列中各項目上叫用轉換函式後所取得之 Decimal 值序列的平均值。

Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>)

計算在輸入序列中各項目上叫用轉換函式後所取得可為 Null 之 Decimal 值的平均值。

Average(IEnumerable<Single>)

來源:
Average.cs
來源:
Average.cs
來源:
Average.cs

計算 Single 值序列的平均值。

C#
public static float Average (this System.Collections.Generic.IEnumerable<float> source);

參數

source
IEnumerable<Single>

要計算平均值的 Single 值序列。

傳回

值序列的平均。

例外狀況

sourcenull

source 沒有包含任何項目。

備註

在 Visual Basic 查詢表達式語法中, Aggregate Into Average() 子句會轉譯為的 Average調用。

另請參閱

適用於

.NET 9 和其他版本
產品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Average(IEnumerable<Nullable<Single>>)

來源:
Average.cs
來源:
Average.cs
來源:
Average.cs

計算可為 Null 之 Single 值序列的平均值。

C#
public static float? Average (this System.Collections.Generic.IEnumerable<float?> source);

參數

source
IEnumerable<Nullable<Single>>

要計算其平均值的可為 Null 之 Single 值的序列。

傳回

值序列的平均值,或者,如果來源序列是空的或只包含 null 值,則為 null

例外狀況

sourcenull

備註

在 Visual Basic 查詢表達式語法中, Aggregate Into Average() 子句會轉譯為的 Average調用。

另請參閱

適用於

.NET 9 和其他版本
產品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Average(IEnumerable<Nullable<Int64>>)

來源:
Average.cs
來源:
Average.cs
來源:
Average.cs

計算可為 Null 之 Int64 值序列的平均值。

C#
public static double? Average (this System.Collections.Generic.IEnumerable<long?> source);

參數

source
IEnumerable<Nullable<Int64>>

要計算其平均值的可為 Null 之 Int64 值的序列。

傳回

值序列的平均值,或者,如果來源序列是空的或只包含 null 值,則為 null

例外狀況

sourcenull

序列中專案的總和大於 Int64.MaxValue

範例

下列程式代碼範例示範如何使用 Average(IEnumerable<Nullable<Int64>>) 來計算平均值。

C#
long?[] longs = { null, 10007L, 37L, 399846234235L };

double? average = longs.Average();

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

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

備註

在 Visual Basic 查詢表達式語法中, Aggregate Into Average() 子句會轉譯為的 Average調用。

另請參閱

適用於

.NET 9 和其他版本
產品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Average(IEnumerable<Nullable<Int32>>)

來源:
Average.cs
來源:
Average.cs
來源:
Average.cs

計算可為 Null 之 Int32 值序列的平均值。

C#
public static double? Average (this System.Collections.Generic.IEnumerable<int?> source);

參數

source
IEnumerable<Nullable<Int32>>

要計算其平均值的可為 Null 之 Int32 值的序列。

傳回

值序列的平均值,或者,如果來源序列是空的或只包含 null 值,則為 null

例外狀況

sourcenull

序列中專案的總和大於 Int64.MaxValue

備註

在 Visual Basic 查詢表達式語法中, Aggregate Into Average() 子句會轉譯為的 Average調用。

另請參閱

適用於

.NET 9 和其他版本
產品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Average(IEnumerable<Nullable<Double>>)

來源:
Average.cs
來源:
Average.cs
來源:
Average.cs

計算可為 Null 之 Double 值序列的平均值。

C#
public static double? Average (this System.Collections.Generic.IEnumerable<double?> source);

參數

source
IEnumerable<Nullable<Double>>

要計算其平均值的可為 Null 之 Double 值的序列。

傳回

值序列的平均值,或者,如果來源序列是空的或只包含 null 值,則為 null

例外狀況

sourcenull

備註

如果專案的總和太大而無法表示為 Double,這個方法會傳回正數或負無限大。

在 Visual Basic 查詢表達式語法中, Aggregate Into Average() 子句會轉譯為的 Average調用。

另請參閱

適用於

.NET 9 和其他版本
產品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Average(IEnumerable<Double>)

來源:
Average.cs
來源:
Average.cs
來源:
Average.cs

計算 Double 值序列的平均值。

C#
public static double Average (this System.Collections.Generic.IEnumerable<double> source);

參數

source
IEnumerable<Double>

要計算平均值的 Double 值序列。

傳回

值序列的平均。

例外狀況

sourcenull

source 沒有包含任何項目。

備註

如果專案的總和太大而無法表示為 Double,這個方法會傳回正數或負無限大。

在 Visual Basic 查詢表達式語法中, Aggregate Into Average() 子句會轉譯為的 Average調用。

另請參閱

適用於

.NET 9 和其他版本
產品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Average(IEnumerable<Int64>)

來源:
Average.cs
來源:
Average.cs
來源:
Average.cs

計算 Int64 值序列的平均值。

C#
public static double Average (this System.Collections.Generic.IEnumerable<long> source);

參數

source
IEnumerable<Int64>

要計算平均值的 Int64 值序列。

傳回

值序列的平均。

例外狀況

sourcenull

source 沒有包含任何項目。

備註

在 Visual Basic 查詢表達式語法中, Aggregate Into Average() 子句會轉譯為的 Average調用。

另請參閱

適用於

.NET 9 和其他版本
產品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Average(IEnumerable<Int32>)

來源:
Average.cs
來源:
Average.cs
來源:
Average.cs

計算 Int32 值序列的平均值。

C#
public static double Average (this System.Collections.Generic.IEnumerable<int> source);

參數

source
IEnumerable<Int32>

要計算平均值的 Int32 值序列。

傳回

值序列的平均。

例外狀況

sourcenull

source 沒有包含任何項目。

範例

下列程式代碼範例示範如何使用 Average(IEnumerable<Int32>) 來計算平均值。

C#
List<int> grades = new List<int> { 78, 92, 100, 37, 81 };

double average = grades.Average();

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

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

備註

在 Visual Basic 查詢表達式語法中, Aggregate Into Average() 子句會轉譯為的 Average調用。

另請參閱

適用於

.NET 9 和其他版本
產品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Average(IEnumerable<Decimal>)

來源:
Average.cs
來源:
Average.cs
來源:
Average.cs

計算 Decimal 值序列的平均值。

C#
public static decimal Average (this System.Collections.Generic.IEnumerable<decimal> source);

參數

source
IEnumerable<Decimal>

要計算平均值的 Decimal 值序列。

傳回

值序列的平均。

例外狀況

sourcenull

source 沒有包含任何項目。

備註

在 Visual Basic 查詢表達式語法中, Aggregate Into Average() 子句會轉譯為的 Average調用。

另請參閱

適用於

.NET 9 和其他版本
產品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Average(IEnumerable<Nullable<Decimal>>)

來源:
Average.cs
來源:
Average.cs
來源:
Average.cs

計算可為 Null 之 Decimal 值序列的平均值。

C#
public static decimal? Average (this System.Collections.Generic.IEnumerable<decimal?> source);

參數

source
IEnumerable<Nullable<Decimal>>

要計算其平均值的可為 Null 之 Decimal 值的序列。

傳回

值序列的平均值,或者,如果來源序列是空的或只包含 null 值,則為 null

例外狀況

sourcenull

序列中專案的總和大於 Decimal.MaxValue

備註

在 Visual Basic 查詢表達式語法中, Aggregate Into Average() 子句會轉譯為的 Average調用。

另請參閱

適用於

.NET 9 和其他版本
產品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>)

來源:
Average.cs
來源:
Average.cs
來源:
Average.cs

計算在輸入序列中各項目上叫用轉換函式後所取得可為 Null 之 Int32 值的平均值。

C#
public static double? Average<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,int?> selector);

類型參數

TSource

source 項目的類型。

參數

source
IEnumerable<TSource>

要計算平均值的值序列。

selector
Func<TSource,Nullable<Int32>>

要套用至每個項目的轉換函式。

傳回

值序列的平均值,或者,如果來源序列是空的或只包含 null 值,則為 null

例外狀況

sourceselectornull

序列中專案的總和大於 Int64.MaxValue

範例

下列程式代碼範例示範如何使用 Average<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) 來計算平均值。

備註

此程式代碼範例會使用與本文所描述之特定多載不同的 方法多載。 若要將範例擴充至本文所描述的多載,請變更函式的 selector 主體。

C#
string[] fruits = { "apple", "banana", "mango", "orange", "passionfruit", "grape" };

double average = fruits.Average(s => s.Length);

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

// This code produces the following output:
//
// The average string length is 6.5.

備註

在 Visual Basic 查詢表達式語法中, Aggregate Into Average() 子句會轉譯為的 Average調用。

另請參閱

適用於

.NET 9 和其他版本
產品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Average<TSource>(IEnumerable<TSource>, Func<TSource,Single>)

來源:
Average.cs
來源:
Average.cs
來源:
Average.cs

計算在輸入序列中各項目上叫用轉換函式後所取得之 Single 值序列的平均值。

C#
public static float Average<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,float> selector);

類型參數

TSource

source 項目的類型。

參數

source
IEnumerable<TSource>

要計算平均值的值序列。

selector
Func<TSource,Single>

要套用至每個項目的轉換函式。

傳回

值序列的平均。

例外狀況

sourceselectornull

source 沒有包含任何項目。

範例

下列程式代碼範例示範如何使用 Average<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) 來計算平均值。

備註

此程式代碼範例會使用與本文所描述之特定多載不同的 方法多載。 若要將範例擴充至本文所描述的多載,請變更函式的 selector 主體。

C#
string[] fruits = { "apple", "banana", "mango", "orange", "passionfruit", "grape" };

double average = fruits.Average(s => s.Length);

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

// This code produces the following output:
//
// The average string length is 6.5.

備註

在 Visual Basic 查詢表達式語法中, Aggregate Into Average() 子句會轉譯為的 Average調用。

另請參閱

適用於

.NET 9 和其他版本
產品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>)

來源:
Average.cs
來源:
Average.cs
來源:
Average.cs

計算在輸入序列中各項目上叫用轉換函式後所取得可為 Null 之 Int64 值的平均值。

C#
public static double? Average<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,long?> selector);

類型參數

TSource

source 項目的類型。

參數

source
IEnumerable<TSource>

要計算平均值的值序列。

selector
Func<TSource,Nullable<Int64>>

要套用至每個項目的轉換函式。

傳回

值序列的平均值,或者,如果來源序列是空的或只包含 null 值,則為 null

範例

下列程式代碼範例示範如何使用 Average<TSource>(IEnumerable<TSource>, Func<TSource,Int64>) 來計算平均值。

備註

此程式代碼範例會使用與本文所描述之特定多載不同的 方法多載。 若要將範例擴充至本文所描述的多載,請變更函式的 selector 主體。

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

double average = numbers.Average(num => long.Parse(num));

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

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

備註

在 Visual Basic 查詢表達式語法中, Aggregate Into Average() 子句會轉譯為的 Average調用。

另請參閱

適用於

.NET 9 和其他版本
產品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>)

來源:
Average.cs
來源:
Average.cs
來源:
Average.cs

計算在輸入序列中各項目上叫用轉換函式後所取得可為 Null 之 Double 值的平均值。

C#
public static double? Average<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,double?> selector);

類型參數

TSource

source 項目的類型。

參數

source
IEnumerable<TSource>

要計算平均值的值序列。

selector
Func<TSource,Nullable<Double>>

要套用至每個項目的轉換函式。

傳回

值序列的平均值,或者,如果來源序列是空的或只包含 null 值,則為 null

例外狀況

sourceselectornull

範例

下列程式代碼範例示範如何使用 Average<TSource>(IEnumerable<TSource>, Func<TSource,Int64>) 來計算平均值。

備註

此程式代碼範例會使用與本文所描述之特定多載不同的 方法多載。 若要將範例擴充至本文所描述的多載,請變更函式的 selector 主體。

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

double average = numbers.Average(num => long.Parse(num));

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

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

備註

在 Visual Basic 查詢表達式語法中, Aggregate Into Average() 子句會轉譯為的 Average調用。

另請參閱

適用於

.NET 9 和其他版本
產品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>)

來源:
Average.cs
來源:
Average.cs
來源:
Average.cs

計算在輸入序列中各項目上叫用轉換函式後所取得可為 Null 之 Single 值的平均值。

C#
public static float? Average<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,float?> selector);

類型參數

TSource

source 項目的類型。

參數

source
IEnumerable<TSource>

要計算平均值的值序列。

selector
Func<TSource,Nullable<Single>>

要套用至每個項目的轉換函式。

傳回

值序列的平均值,或者,如果來源序列是空的或只包含 null 值,則為 null

例外狀況

sourceselectornull

範例

下列程式代碼範例示範如何使用 Average<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) 來計算平均值。

備註

此程式代碼範例會使用與本文所描述之特定多載不同的 方法多載。 若要將範例擴充至本文所描述的多載,請變更函式的 selector 主體。

C#
string[] fruits = { "apple", "banana", "mango", "orange", "passionfruit", "grape" };

double average = fruits.Average(s => s.Length);

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

// This code produces the following output:
//
// The average string length is 6.5.

備註

在 Visual Basic 查詢表達式語法中, Aggregate Into Average() 子句會轉譯為的 Average調用。

另請參閱

適用於

.NET 9 和其他版本
產品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Average<TSource>(IEnumerable<TSource>, Func<TSource,Int64>)

來源:
Average.cs
來源:
Average.cs
來源:
Average.cs

計算在輸入序列中各項目上叫用轉換函式後所取得之 Int64 值序列的平均值。

C#
public static double Average<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,long> selector);

類型參數

TSource

來源之項目的類型。

參數

source
IEnumerable<TSource>

要計算平均值的值序列。

selector
Func<TSource,Int64>

要套用至每個項目的轉換函式。

傳回

值序列的平均。

例外狀況

sourceselectornull

source 沒有包含任何項目。

序列中專案的總和大於 Int64.MaxValue

範例

下列程式代碼範例示範如何使用 Average<TSource>(IEnumerable<TSource>, Func<TSource,Int64>) 來計算平均值。

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

double average = numbers.Average(num => long.Parse(num));

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

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

備註

在 Visual Basic 查詢表達式語法中, Aggregate Into Average() 子句會轉譯為的 Average調用。

另請參閱

適用於

.NET 9 和其他版本
產品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Average<TSource>(IEnumerable<TSource>, Func<TSource,Int32>)

來源:
Average.cs
來源:
Average.cs
來源:
Average.cs

計算在輸入序列中各項目上叫用轉換函式後所取得之 Int32 值序列的平均值。

C#
public static double Average<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,int> selector);

類型參數

TSource

source 項目的類型。

參數

source
IEnumerable<TSource>

要計算平均值的值序列。

selector
Func<TSource,Int32>

要套用至每個項目的轉換函式。

傳回

值序列的平均。

例外狀況

sourceselectornull

source 沒有包含任何項目。

序列中專案的總和大於 Int64.MaxValue

範例

下列程式代碼範例示範如何使用 Average<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) 來計算平均值。

C#
string[] fruits = { "apple", "banana", "mango", "orange", "passionfruit", "grape" };

double average = fruits.Average(s => s.Length);

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

// This code produces the following output:
//
// The average string length is 6.5.

備註

在 Visual Basic 查詢表達式語法中, Aggregate Into Average() 子句會轉譯為的 Average調用。

另請參閱

適用於

.NET 9 和其他版本
產品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Average<TSource>(IEnumerable<TSource>, Func<TSource,Double>)

來源:
Average.cs
來源:
Average.cs
來源:
Average.cs

計算在輸入序列中各項目上叫用轉換函式後所取得之 Double 值序列的平均值。

C#
public static double Average<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,double> selector);

類型參數

TSource

source 項目的類型。

參數

source
IEnumerable<TSource>

要計算平均值的值序列。

selector
Func<TSource,Double>

要套用至每個項目的轉換函式。

傳回

值序列的平均。

例外狀況

sourceselectornull

source 沒有包含任何項目。

範例

下列程式代碼範例示範如何使用 Average<TSource>(IEnumerable<TSource>, Func<TSource,Int64>) 來計算平均值。

備註

此程式代碼範例使用方法的多載,與本文描述的特定多載不同。 若要將範例延伸至本文所描述的多載,請變更函 selector 式的主體。

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

double average = numbers.Average(num => long.Parse(num));

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

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

備註

在 Visual Basic 查詢表達式語法中 Aggregate Into Average() ,子句會轉譯為的 Average調用。

另請參閱

適用於

.NET 9 和其他版本
產品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Average<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>)

來源:
Average.cs
來源:
Average.cs
來源:
Average.cs

計算在輸入序列中各項目上叫用轉換函式後所取得之 Decimal 值序列的平均值。

C#
public static decimal Average<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,decimal> selector);

類型參數

TSource

source 項目的類型。

參數

source
IEnumerable<TSource>

用來計算平均值的值序列。

selector
Func<TSource,Decimal>

要套用至每個項目的轉換函式。

傳回

值序列的平均。

例外狀況

sourceselectornull

source 沒有包含任何項目。

序列中元素的總和大於 Decimal.MaxValue

範例

下列程式代碼範例示範如何使用 Average<TSource>(IEnumerable<TSource>, Func<TSource,Int64>) 來計算平均值。

備註

此程式代碼範例使用方法的多載,與本文描述的特定多載不同。 若要將範例延伸至本文所描述的多載,請變更函 selector 式的主體。

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

double average = numbers.Average(num => long.Parse(num));

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

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

備註

在 Visual Basic 查詢表達式語法中 Aggregate Into Average() ,子句會轉譯為的 Average調用。

另請參閱

適用於

.NET 9 和其他版本
產品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Average<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>)

來源:
Average.cs
來源:
Average.cs
來源:
Average.cs

計算在輸入序列中各項目上叫用轉換函式後所取得可為 Null 之 Decimal 值的平均值。

C#
public static decimal? Average<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,decimal?> selector);

類型參數

TSource

source 項目的類型。

參數

source
IEnumerable<TSource>

要計算平均值的值序列。

selector
Func<TSource,Nullable<Decimal>>

要套用至每個項目的轉換函式。

傳回

值序列的平均值,或者,如果來源序列是空的或只包含 null 值,則為 null

例外狀況

sourceselectornull

序列中元素的總和大於 Decimal.MaxValue

範例

下列程式代碼範例示範如何使用 Average<TSource>(IEnumerable<TSource>, Func<TSource,Int64>) 來計算平均值。

備註

此程式代碼範例使用方法的多載,與本文描述的特定多載不同。 若要將範例延伸至本文所描述的多載,請變更函 selector 式的主體。

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

double average = numbers.Average(num => long.Parse(num));

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

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

備註

在 Visual Basic 查詢表達式語法中 Aggregate Into Average() ,子句會轉譯為的 Average調用。

另請參閱

適用於

.NET 9 和其他版本
產品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0