ภาพรวม
เมธอด Average() ใน LINQ คำนวณ ค่าเฉลี่ย (mean) ของลำดับตัวเลข คืนค่า double (สำหรับ int, long, float, double, decimal)
รูปแบบการใช้งาน
int[] arr = { 10, 17, 25, 30, 40, 55, 60, 70 };
double avg = arr.AsQueryable().Average(); // หรือ Queryable.Average(arr.AsQueryable())
ตัวอย่างโค้ดเต็ม
using System;
using System.Linq;
class Demo
{
static void Main()
{
var arr = new int[] { 10, 17, 25, 30, 40, 55, 60, 70 };
double avg = Queryable.Average(arr.AsQueryable());
Console.WriteLine("Average = " + avg);
}
}
ผลลัพธ์
Average = 38.375
ตัวเลือกเพิ่มเติม
Average(selector)- คำนวณเฉลี่ยจาก property:people.Average(p => p.Age)- รองรับชนิด:
int, long, float, double, decimalและ nullable versions - ลำดับว่างจะโยน
InvalidOperationException(ใช้DefaultIfEmpty()ป้องกันได้)