C#夯实基础-Lambda在List中的使用
在C#中基本类型比如List ,Dictionary,数组等都有委托来实现相关的操作。此时Lambda表达式就可以使用了.
实例1,查找字符串List的包含a的元素
代码
//字符串型的list
List<string> lstInfo = new List<string>() { "abc", "hello", "ok", "good", "bye" };查询当前List每项包含o字符的所有项
在List这个基本类型有一个方法FindAll的基本方法
可以发现FindAll中使用了一个委托
参数 match 是一个 Predicate<T> 委托,用于定义要搜索的元素应满足的条件。
public delegate bool Predicate<in T>(T obj);Predicate是返回bool型的一个委托
最终的代码是
public static void DoTest4()
{
//字符串型的list
List<string> lstInfo = new List<string>() { "abc", "hello", "ok", "good", "bye" };
//查找当前list中的每一项包含o字符的
var lstNew = lstInfo.FindAll(x =>
{
if (x.Contains("o"))
{
return true;
}
else
{
return false;
}
});
foreach (string s in lstNew)
{
Console.WriteLine(s);
}
}返回的结果是:
同样的方法,我们可以查看比如List的其他使用了委托的方法,都可以使用Lambda表达式来对List进行操作。
其他的方法,可以参考MSDN或者在当前的List的Find方法F1进行C#本身已经定义的方法参数
List.Find查找一个元素
List.Sort排序方法
另外说明一下,委托的作用就是将实现交给用户 ,本身只是起到一个关键返回结果的的作用,根据返回结果,对象根据结果进行相应的调整。
相关文章
- Spring Boot中对接Twilio以实现发送验证码和验证短信码
- Spring Boot 3.5:这次更新让你连配置都不用写了,惊不惊喜?
- Spring Boot+Pinot实战:毫秒级实时竞价系统构建
- SpringBoot敏感配置项加密与解密实战
- SpringBoot 注解最全详解,建议收藏!
- Spring Boot 常用注解大全:从入门到进阶
- SpringBoot启动之谜:@SpringBootApplication如何让配置化繁为简
- Springboot集成Kafka原理_spring集成kafka的原理
- Spring Boot中@Data注解的深度解析与实战应用
- 大佬用1000字就把SpringBoot的配置文件讲的明明白白!
