zoukankan      html  css  js  c++  java
  • 【转载】C#中使用Average方法对List集合中相应元素求平均值

    在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技术小趣屋

    博主个人技术交流群:960640092,博主微信公众号如下:

  • 相关阅读:
    [HNOI2008] [BZOJ1008] 越狱|组合数学
    (转)位运算简介及使用技巧
    AW297 赤壁之战(数据结构优化DP)
    AW280 陪审团
    AW288 休息时间
    AW281 硬币
    AW383 观光
    AW366 看牛 (欧拉回路)
    AW365 圆桌骑士
    AW363 B城
  • 原文地址:https://www.cnblogs.com/xu-yi/p/11026475.html
Copyright © 2011-2022 走看看