相关在博客中介绍的很详细了。特转载学习学习。
http://www.cnblogs.com/OceanEyes/archive/2012/08/27/2658920.html
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading.Tasks;
namespace Testing2
{
class Program
{
static void Main(string[] args)
{
int[] array = { 1, 2, 3, 5, 6, 6, 7, 8, 9 };
//使用匿名方法来求偶数
//List<int> newList = MyFilter(array, delegate(int i) {
// return i % 2 == 0;
//});
//使用Lambda表达式求偶数
List<int> newList = MyFilter(array, i => i % 2 == 0);
foreach (int item in newList)
{
Console.WriteLine(item);
}
Console.ReadKey();
}
//Func<int,bool>: 封装了一个具有一个int参数并且返回类型为bool类型的方法
static List<int> MyFilter(int[] array, Func<int, bool> filter)
{
List<int> list = new List<int>();
for (int i = 0; i < array.Length; i++)
{
if (filter(array[i]))
{
list.Add(array[i]);
}
}
return list;
}
}
}