int[] arr = {1,4,5,6,7,2,4,5,6,8,0};
int averageResult = arr.Average(); //?? How to return Average int result. Without casting/convert
在這個例子中,我們可以從 Average 方法獲得 int 結果,而不用 cast/convert嗎?
uj5u.com熱心網友回復:
LINQ 中的Average()回傳雙精度,因此不可能。如果您對代碼清潔度有疑問,或者您想縮短代碼長度,那么您可以使用自己的擴展方法來包裝此轉換。
public static class ExtensionMethods
{
public static int AverageInt(this int[] array)
{
double avg = array.Average();
return Math.Round(avg, MidpointRounding.AwayFromZero);
}
}
然后使用它:D
int[] arr = {1,4,5,6,7,2,4,5,6,8,0};
int averageResult = arr.AverageInt();
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/509942.html
標籤:C#。网林克平均
上一篇:如何使用圖形服務客戶端根據azureActiveDirectory中的組ID獲取組名
下一篇:僅當名稱不同時才復制檔案
