【转载】C#中使用Average方法对List集合中相应元素求平均值
程序员文章站
2022-05-15 13:48:26
在C#的List集合操作中,有时候需要对List集合元素进行汇总求平均值,如数值类型的List集合元素,有时候对象类型的List集合也需要对集合中的元素的某个对象进行汇总求平均值,此时都可以使用到Average来实现,Average方法是List集合中的Linq扩展方法,Average方法有2种形式 ......
在c#的list集合操作中,有时候需要对list集合元素进行汇总求平均值,如数值类型的list集合元素,有时候对象类型的list集合也需要对集合中的元素的某个对象进行汇总求平均值,此时都可以使用到average来实现,average方法是list集合中的linq扩展方法,average方法有2种形式,一种是不带任何参数的average()形式,适用于数值型如int、double、decimal等数值类型的list集合计算平均值,另一种是带lambda表达式的书写形式。
(1)针对数值类型的list集合,直接调用无参数的average()形式即可实现,例如有个list<int>的集合list1,里面元素为1至10,求平均值可使用下列语句
list<int> list1 = new list<int>() { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; var avgresutl= list1.average();
计算得到的结果为avgresutl=5.5,avgresult为double双精度类型。
(2)根据list对象集合中的某个属性进行求平均值的情况。
例如定义个测试类testmodel类,具体实现如下:
public class testmodel { public int index { set; get; } public string name { set; get; } }
在定义一个list<testmodel>集合对象testlist,往集合中添加下面3个元素。
list<testmodel> testlist = new list<consoleapplication1.testmodel>(); testlist.add(new testmodel() { index=1, name="index1" }); testlist.add(new testmodel() { index = 2, name = "index2" }); testlist.add(new testmodel() { index = 3, name = "index3" });
需要对list集合中的元素的index属性进行汇总求平均值可使用下列语句:
var avgresult = testlist.average(t => t.index);
最后计算的结果为avgresult=2,avgresult为double双精度类型。
备注:原文转载自博主个人站it技术小趣屋,原文链接c#中使用average方法对list集合中相应元素求平均值_it技术小趣屋。
下一篇: 复盘一次服务安装失败问题
推荐阅读
-
【转载】C#中List集合使用RemoveRange方法移除指定索引开始的一段元素
-
【转载】C#中使用Average方法对List集合中相应元素求平均值
-
【转载】C#中List集合使用LastOrDefault方法查找出最后一个符合条件的元素
-
【转载】C#中List集合使用RemoveAt方法移除指定索引位置的元素
-
【转载】C#中List集合使用Reverse方法对集合中的元素进行倒序反转
-
【转载】C#中Add方法将往List集合末尾添加相应元素对象
-
【转载】 C#中使用CopyTo方法将List集合元素拷贝到数组Array中
-
【转载】 C#中List集合使用First()方法获取第一个元素
-
【转载】 C#中List集合使用OrderByDescending方法对集合进行倒序排序
-
【转载】C#中List集合使用Exists方法判断是否存在符合条件的元素对象