我们就以一篇题来讲一下lamdba常用的表达式
创建一个学生类 学生类包含name、age、sex、score等字段
创建一个lambda表达式,传递2个学生对象 返回值为空
判断俩个对象的成绩字段,并且打印对应的哪个对象的成绩大于另外一个对象的成绩
例如传递一个张三对象 成绩70
传递第二个对象李四 成绩90
打印李四的成绩大于张三的成绩
首先,我们需要创建一个实体类型
就比如:
接下来,我们在main中先创建两个数组,将姓氏和名字这几个元素分别在两个数组之中
string[] xings = { "张", "王", "李", "赵", "刘", "武", "吴" };
string[] names = { "狗蛋", "钢弹", "鸭蛋", "屎蛋", "蛋蛋", "太白", "羽", "公明", "飞", "唯", "备" };
1.创建学生保存在list里面
我们可以使用随机数并且用学生类来创建一个list集合,使用for循环
Random r1 = new Random();
List<Student> list = new List<Student>();
for (int i = 0; i < 10; i++)
{
Student s1 = new Student();
s1.StudentName = xings[r1.Next(0, xings.Length)] + names[r1.Next(0, names.Length)];
s1.StudentCode = 10000 + i + "";
s1.ClassCode = i % 2 == 0 ? "1001" : "1002";// 偶数学生班是1001 奇数的学生班是1002
s1.ClassName = i % 2 == 0 ? "软件1班" : "软件2班";
s1.Age = r1.Next(18, 30);
list.Add(s1); //添加
}
2.查询班级学生信息
按照年龄由小到大进行排序
查询班级编号并且姓名为李开头根据年龄进行排序
对所有学生年龄计算综合
sum 求和的,参数是lamdba表达式对应字段
Console.WriteLine(list.Sum(t => t.Age));
计算学生年龄总和
Console.WriteLine(s2.Sum(t=>t.Age));
求最大学生年龄
Console.WriteLine(s2.Max(t=>t.Age));
求学生年龄的平均值
Console.WriteLine(s2.Average(t=>t.Age));
(●'◡'●),如果有部队的地方呢,还请诸位大佬多多包涵哈