2017年12月13日学习简单委托的使用和扩展方法
继续今天第一节学习内容简单的委托使用和方法扩展
[1]先定义一个list<string>的集合
List<string> list=new List<string> ()
{
" 2"," 5"," 10"," 50"," 88"
};
问题找出此集合中的大于字符串10的字符串
[2]用其中的自带方法来完成基本委托和方法扩展;
在main方法外面写上一个静态方法
static bool FindAllDel(string str)
{
return str.CompaerTo("10")>=0;
}
在main方法里面写
predicate<string> pre=new predicate(FindAllDel);
List<string> result=list.FindAll(pre);
for(string item in result)
{
Console.writeLine(item);
}
Console.ReadLine();
【2】还可以用扩展方法来写
在项目中新增一个静态类
在类中写上一个静态方法
public static Class listExe
{
public static List<string> MyFindAll(this List<string> list,predicate<string> whereDel)
{
//按照用户传进来的集合和方法来选择集合中满足条件的元素,并且选择出元素
List<string> result =new List<string> () {};
foreach( string item in list)
{
if(whereDel(item))
{
result.Add(item);
}
}
return result;
}
}
【3】在main中调用该扩展方法
var result=list.MyFindAll(FindAllDel)
foreach(string item in result)
{
Console.WriteLine(item):
}
Console.ReadLine();
第一节课学习完毕
浙公网安备 33010602011771号