时间: 2020-09-5|tag:56次围观|0 条评论

在学习的过程中,发现泛型集合List<T>有一个Where函数可以筛选出满足一定条件的元素,结合Lambda表达式使用特别方便,写出来与大家分享。

1.关于Func<>

Func是一种有任意个输入参数,有一个返回值的委托,在使用的过程中,Func<in,in,out>,前n-1个是输入参数类型,第N个是输出参数类型。

如Fun<int,int,bool> compare=(x,y)=>{return x>y;};

表示定义一个 两个输入参数为int类型的,输出类型为bool类型的委托。

2.Where()

C# 找出泛型集合中的满足一定条件的元素 List.Wher()插图

可以看到 以List<string>为例子,改where的参数为Func<string,bool>的委托,也就是说是一个输入值为string类型,输出为bool类型的委托。 如果返回为真,则该元素会被添加到IEnumerable中,通过对IEnumerable的遍历,可以将符合条件的每个元素输出。

3.代码片段

 

 List<string> names = new List<string>();            names.Add("wangyang");            names.Add("litong");            names.Add("yangjie");            IEnumerable<string> ie = names.Where((name) => { return name.Length < 7; });            foreach (var VARIABLE in ie)            {                Console.WriteLine(VARIABLE);            }

 

 

文章转载于:https://www.cnblogs.com/CoderAyu/p/8490147.html

原著是一个有趣的人,若有侵权,请通知删除

本博客所有文章如无特别注明均为原创。
复制或转载请以超链接形式注明转自起风了,原文地址《C# 找出泛型集合中的满足一定条件的元素 List.Wher()
   

还没有人抢沙发呢~