本人喜欢代码看起来比较优雅,而C#真的是一种很优雅的语言。比如我们New List<string> StrList;
如果我们想查找StrList,可以使用C#提供的
StrList.Find , StrList.FindAll , StrList.Exists , StrList.FindLast , StrList.FindIndex
例如:
StrList.FindAll(delegate(String str) { return str.Length <= ; });
使用这种匿名代理,使得C#的代码看起来更加清晰。上述的关键字都是用到了Predicate作为参数的类型。
那除了C#提供的关键字,我们还可以自己实现Predicate来实现自己的代码。如:
我们在对类使用IEnumerable接口的时候可以自己实现Find方法:
public List<string> Find(Predicate<string> match)
{
foreach (string str in this)
{
if (match(str))
{
return str;
}
}
return string.Empty;
}